Developer's Hub
v1.0
API Reference
Powered By

Title
Message
Create new category
What is the title of your new category?
Edit page index title
What is the title of the page index?
Edit category
What is the new title of your category?
Edit link
What is the new title and URL of your link?
TransactionPack()
Copy Markdown
Open in ChatGPT
Open in Claude
Summary
Route | Type | Example |
|---|---|---|
/Transaction/Pack | POST |
Description
Packs a transaction to a byte array
This is needed for sending a transaction
Request
Request Structure
{
// parameters common for all requests
"MethodApi" : "string_value", // API method name to form and process a transaction
"PublicKey":"string_value", // Sender public key in Base58
"ReceiverPublicKey":"string_value", // Recipient public key in Base58
“Amount”:decimal, // Transaction amount
"Fee":decimal, // Maximum fee approved by the user
"SmartContractSource":"String_value", //Source code of smart contract
“UserData”:”string_value” // If needed extra information can be stored inside UserData
}
Request Parameters
MethodApi: string value - it’s vital to specify the API method to pack the transaction: "TransferToken", "TransferCs", "Delegation", "SmartDeploy", "SmartMethodExecute";
PublicKey: string_value - sender public key in base58
ReceiverPublicKey: string_value - recipient public key in base58
Amount: decimal - transaction amount as a decimal or integer number
Fee: decimal - maximum fee approved by the user as a decimal or integer number
UserData: string_value - data the user sent with the transaction including the data about deployment and initiation of a smart contract
Response
Response Structure
"dataResponse":{
"transactionPackagedStr":"String_Value" // packed transaction as a string in base58
},
Example Code
import requests
import json
def Transaction_Pack():
url = 'http://apinode.credits.com/api/Transaction/Pack'
headers = {
'Content-type': 'application/json'
, 'Accept': 'application/json'
, 'Content-Encoding': 'utf-8'
}
data = {
"NetworkAlias":"Testnet"
, "MethodApi" : "TransferCs"
, "PublicKey":"EnrT42AkUpe32xw1tXE4e3siGMExpRe7uvsgNj36RzLc"
, "ReceiverPublicKey":"4SFfA1S2xfA3BdgkTn2tK14yDhLuD11RVz78kqx35jct"
, "Amount":0.1
, "Fee":1
, "UserData":"" }
answer = requests.post(url, data=json.dumps(data), headers=headers)
if answer.status_code == 200:
response = answer.text
return response
print(Transaction_Pack())
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace Program.Getinfo
{
public class PackTransaction
{
static readonly HttpClient client = new HttpClient();
public class body
{
public string authKey { get; set; }
public string networkAlias { get; set; }
public string MethodApi { get; set; }
public string PublicKey { get; set; }
public string ReceiverPublicKey { get; set; }
public double Amount { get; set; }
public double Fee { get; set; }
public string UserData { get; set; }
}
public static async Task Main()
{
try
{
var body = new body
{
authKey = "87cbdd85-b2e0-4cb9-aebf-1fe87bf3afdd",
networkAlias = "Testnet",
MethodApi = "TransferCs",
PublicKey = "EnrT42AkUpe32xw1tXE4e3siGMExpRe7uvsgNj36RzLc",
ReceiverPublicKey = "4SFfA1S2xfA3BdgkTn2tK14yDhLuD11RVz78kqx35jct",
Amount = 0.1,
Fee = 1,
UserData = ""
};
var httpContent = new StringContent(JsonConvert.SerializeObject(body),
Encoding.UTF8, "application/json");
var response = await client.PostAsync("http://apinode.credits.com/api/Transaction/Pack",
httpContent);
Console.WriteLine("RESPONSE=" +
await response.Content.ReadAsStringAsync());
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
}
}
#include <iostream>
#include <cpprest/http_client.h>
#include <cpprest/filestream.h>
using namespace utility; // Common utilities like string conversions
using namespace web; // Common features like URIs.
using namespace web::http; // Common HTTP functionality
using namespace web::http::client; // HTTP client features
using namespace concurrency::streams; // Asynchronous streams
using namespace web::json;
int main(int argc, char* argv[])
{
web::json::value json_v;
web::json::value json_return;
json_v[L"authKey"] = web::json::value::string(L"");
json_v[L"NetworkAlias"] = web::json::value::string(L"Testnet");
json_v[L"MethodApi"] = web::json::value::string(L"TransferCs");
json_v[L"PublicKey"] = web::json::value::string(L"EnrT42AkUpe32xw1tXE4e3siGMExpRe7uvsgNj36RzLc");
json_v[L"ReceiverPublicKey"] = web::json::value::string(L"4SFfA1S2xfA3BdgkTn2tK14yDhLuD11RVz78kqx35jct");
json_v[L"Amount"] = web::json::value::number(0.1);
json_v[L"Fee"] = web::json::value::number(1.0);
json_v[L"UserData"] = web::json::value::string(L"");
http_client client(U("http://apinode.credits.com"));
client.request(web::http::methods::POST, U("/api/Transaction/Pack"), json_v)
.then([](const web::http::http_response& response) {
return response.extract_json();
})
.then([&json_return](const pplx::task<web::json::value>& task) {
try {
json_return = task.get();
}
catch (const web::http::http_exception& e) {
std::cout << "error " << e.what() << std::endl;
}
})
.wait();
std::wcout << json_return.serialize() << std::endl;
return 0;
}
Last updated on
Next to read:
TransactionExec()null
Discard Changes
Do you want to discard your current changes and overwrite with the template?
Archive Synced Block
Message
Create new Template
What is this template's title?
Delete Template
Message