Financial Transactions API
Description of endpoints used to construct Financial Transactions on the DeSo blockchain
Send DeSo
POST
/api/v0/send-deso
Create a Basic transfer transaction. Basic transfer transactions send DeSo from one used to another. Transaction needs to be signed and submitted through api/v0/submit-transaction
before changes come into effect.
A Basic Transfer transaction sends DeSo from the sender to the receiver.
Endpoint implementation in backend.
Example usage in frontend: - Make request to Send DeSo to get a preview of the transaction. - Make request to Send DeSo and sign+submit the transaction. - Use SendDeSo to transfer DeSo to another user.
Request Body
SenderPublicKeyBase58Check*
String
Public key of the sender
RecipientPublicKeyOrUsername*
String
Public key or Username of the recipient
AmountNanos*
int64
transaction amount in nanos - If less than 0, this will create a max spend transaction that will send all funds from Sender to Receiver
MinFeeRateNanosPerKB*
uint64
Rate per KB
TransactionFees
TransactionFee]
Array of
objects that define additional outputs that need to be added to this transaction
{
"TotalInputNanos": 1999946613,
"SpendAmountNanos": 1000000000,
"ChangeAmountNanos": 999946354,
"FeeNanos": 259,
"TransactionIDBase58Check": "CbUyAcAiR5C626pSXQ1KCHWxo55FiSsBS66GELxVPPJMT2Q4yjFTA",
"Transaction": {
"TxInputs": [
{
"TxID": [...],
"Index": 0
}
],
"TxOutputs": [
{
"PublicKey": "Ajl7GoDroKYGRGUK8Twqb/37vziDDK/DSTenXd1EuM5S",
"AmountNanos": 1000000000
},
{
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"AmountNanos": 999946354
}
],
"TxnMeta": {},
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"ExtraData": null,
"Signature": null,
"TxnTypeJSON": 2
},
"TransactionHex": "025051b0eeda78885641a2340f57b908f475d84ce3b8ce2507815c89e857ef1cce0006caf6e4d44a8575fe235d7d3ffdb1020485526118d3379f5a993a31f5a2823f000202397b1a80eba0a60644650af13c2a6ffdfbbf38830cafc34937a75ddd44b8ce528094ebdc0302aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c45f2f0e7dc0302002102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c450000",
"TxnHashHex": "df850aef107687e36034e3d298da341fc747d4a663e0a5e98fe3ce05cc10b4be"
}
Buy Or Sell Creator Coin
POST
/api/v0/buy-or-sell-creator-coin
Create a buy/sell creator coin transaction. Transaction needs to be signed and submitted through api/v0/submit-transaction
before changes come into effect.
A buy creator coin transaction locks DeSo in the creator coin of a creator and in return gives the purchaser creator coins.
A sell creator coin transaction unlocks an amount of DeSo commensurate with the amount of creator coins sold.
Endpoint implementation in backend.
Example usages in frontend: - Make request to Buy Or Sell Creator Coin - Use BuyOrSellCreatorCoin to get a preview of purchase/sale of creator coins - Use BuyOrSellCreatorCoin to buy or sell creator coins
Request Body
MinCreatorCoinExpectedNanos
uint64
Minimum amount of Creator Coins expected when buying creator coins only required for buy transactions
MinFeeRateNanosPerKB*
uint64
Rate per KB
CreatorCoinToSellNanos*
uint64
Amount of Creator Coin to sell only required for sell transactions
TransactionFees
TrasactionFee[]
Array of
objects that define additional outputs that need to be added to this transaction
CreatorPublicKeyBase58Check*
String
Public key of creator whose coin is being purchased
DeSoToAddNanos*
uint64
deprecated
OperationType*
String
"buy" or "sell"
MinDeSoExpectedNanos
uint64
Minimum DeSo expected to be received when selling creator coins only required for sell transactions
DeSoToSellNanos*
uint64
Amount of DeSo to spend purchasing creator coins only required for buy transactions
UpdaterPublicKeyBase58Check*
String
Public key of user purchasing/selling creator coins
InTutorial
Boolean
When true, perform additional checks to ensure user is at the correct point in the tutorial to execute this buy/sell creator coin transaction
{
"ExpectedDeSoReturnedNanos": 0, // Expected amount of DeSo received from the sale. Will always be 0 for buys.
"ExpectedCreatorCoinReturnedNanos": 1200, // Expected amount of creator coins received from the purchase. Will always be 0 for sales.
"FounderRewardGeneratedNanos": 9999664686, // Founders reward generated from this purchase. Will always be 0 for sales.
"SpendAmountNanos": 1000000000,
"TotalInputNanos": 1933081867,
"ChangeAmountNanos": 933081602,
"FeeNanos": 265,
"Transaction": {
"TxInputs": [
{
"TxID": [... ],
"Index": 0
}
],
"TxOutputs": [
{
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"AmountNanos": 933081602
}
],
"TxnMeta": {
"ProfilePublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF", // Public key of the creator whose coin was purchased in this transaction
"OperationType": 0, // 0 means buy, 1 means sell
"DeSoToSellNanos": 1000000000, // Amount of DeSo used to purchase creator coins in this transaction
"CreatorCoinToSellNanos": 0, // Amount of creator coins sold in this transaction
"DeSoToAddNanos": 0, // not in use - ignore
"MinDeSoExpectedNanos": 0, // Minimum DeSo expected from a creator coin sale. This will always be 0 for buys.
"MinCreatorCoinExpectedNanos": 1000 // Minimum amount of creator coins expected from this purchase. This will always be 0 for sales.
},
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"ExtraData": null,
"Signature": null,
"TxnTypeJSON": 11
},
"TransactionHex": "02acc5b6f137be6a9b49fa1e0b20d0b6c5f2a76618628e1cd34fe8dbb198b627f1001ba3390ffb4817f3d5993ef39fd2fc4cfd75312ba67a7ce2f1d083efa0df2e5e000102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c4582e4f6bc030b2c2102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c45008094ebdc03000000002102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c450000",
"TxnHashHex": "69f08986184d99833c40d794d3fdd8861c0be602f15e3021ed771e49c6f7771c"
}
Transfer Creator Coin
POST
/api/v0/transfer-creator-coin
Create a transfer creator coin transaction. Transaction needs to be signed and submitted through api/v0/submit-transaction
before changes come into effect.
Transfer creator coin transactions sends creator coins owned by the sender to the receiver.
Endpoint implementation in backend.
Example usages in frontend: - Make request to Transfer Creator Coin - Use TransferCreatorCoin to get a preview of a creator coin transfer transaction. - Use TransferCreatorCoin to construct, sign, and submit a creator coin transfer transaction.
Request Body
SenderPublicKeyBase58Check*
String
Public key of user sending creator coins
CreatorPublicKeyBase58Check*
String
Public key of creator whose coins will be sent
ReceiverUsernameOrPublicKeyBase58Check*
String
username or public key of user who will receive creator coins
CreatorCoinToTransferNanos*
uint64
Amount of Creator Coin to transfer
MinFeeRateNanosPerKB*
uint64
Rate per KB
TrasactionFees
TrasactionFee[]
Array of
objects that define additional outputs that need to be added to this transaction
{
"SpendAmountNanos": 0,
"TotalInputNanos": 989250936,
"ChangeAmountNanos": 989250675,
"FeeNanos": 261,
"Transaction": {
"TxInputs": [
{
"TxID": [...],
"Index": 0
}
],
"TxOutputs": [
{
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"AmountNanos": 989250675
}
],
"TxnMeta": {
"ProfilePublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF", // Public key of the creator whose coin is being transferred in this transaction
"CreatorCoinToTransferNanos": 1000000000, // Amount of Creator coins being transferred (in nanos)
"ReceiverPublicKey": "Ajl7GoDroKYGRGUK8Twqb/37vziDDK/DSTenXd1EuM5S" // Public key of the recipient of the creator coin transfer
},
"PublicKey": "Aqo9yNKZ6h5JFN5mSU7T4W7amg1lcZ1SPBqaA8v59gxF",
"ExtraData": null,
"Signature": null,
"TxnTypeJSON": 14
},
"TransactionHex": "01f2816e264f381cf153299e0c3cc894ab67687e83b79e55996bdb1c44280aed1d000102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c45f388dbd7030e492102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c458094ebdc032102397b1a80eba0a60644650af13c2a6ffdfbbf38830cafc34937a75ddd44b8ce522102aa3dc8d299ea1e4914de66494ed3e16eda9a0d65719d523c1a9a03cbf9f60c450000",
"TxnHashHex": "a0e90d5786367855ea2960cd4d8cc3ad81a73c056c7ee62a637ab17aa01320fe"
}
Last updated
Was this helpful?