Associations Transactions API

Description of endpoints to construct Associations Transactions on the DeSo blockchain

User Associations

Create user association

POST /api/v0/user-associations/create

Creates a create user association transaction. The transaction needs to be signed and submitted through /api/v0/submit-transaction before changes come into effect.

Implementation in backend

Request Body

Name
Type
Description

TransactorPublicKeyBase58Check*

String

The public key of the user creating the transaction

TargetUserPublicKeyBase58Check*

String

The public key of the user to which the association is referencing

AppPublicKeyBase58Check

String

The public key of the application on which the association is being created

AssociationType*

String

The association type

AssociationValue*

String

The association value

ExtraData

map[String]String

Any additional arbitrary key-value data to store with the association

MinFeeRateNanosPerKB*

uint64

The minimum fee rate (in nanos) per kb

TransactionFees

[]TransactionFee

Array of

TransactionFee

objects that define additional outputs that need to be added to this transaction

{
    "SpendAmountNanos": 0,
    "TotalInputNanos": 999999594,
    "ChangeAmountNanos": 999999032,
    "FeeNanos": 562,
    "Transaction": {
        "TxInputs": [
            {
                "TxID": [
                    53,
                    195,
                    47,
                    166,
                    22,
                    216,
                    106,
                    179,
                    186,
                    225,
                    130,
                    110,
                    104,
                    152,
                    74,
                    215,
                    74,
                    183,
                    183,
                    53,
                    148,
                    68,
                    5,
                    24,
                    140,
                    59,
                    26,
                    222,
                    129,
                    155,
                    71,
                    154
                ],
                "Index": 0
            }
        ],
        "TxOutputs": [
            {
                "PublicKey": "A0LZQ7jbqTpM4puFhHnGfx5PERDuy+H4PcAbRV64sSOz",
                "AmountNanos": 999999032
            }
        ],
        "TxnMeta": {
            "TargetUserPublicKey": [
                3,
                95,
                255,
                160,
                105,
                4,
                12,
                4,
                60,
                209,
                243,
                177,
                97,
                96,
                27,
                254,
                116,
                12,
                121,
                196,
                61,
                110,
                188,
                220,
                197,
                18,
                109,
                28,
                59,
                216,
                172,
                68,
                224
            ],
            "AppPublicKey": [
                2,
                88,
                191,
                20,
                43,
                67,
                244,
                2,
                20,
                110,
                45,
                7,
                44,
                158,
                243,
                19,
                216,
                99,
                248,
                244,
                90,
                149,
                247,
                213,
                172,
                230,
                29,
                245,
                127,
                216,
                190,
                252,
                93
            ],
            "AssociationType": "RU5ET1JTRU1FTlQ=",
            "AssociationValue": "U1FM"
        },
        "PublicKey": "A0LZQ7jbqTpM4puFhHnGfx5PERDuy+H4PcAbRV64sSOz",
        "ExtraData": {
            "PeerID": "QQ=="
        },
        "Signature": {
            "Sign": null,
            "RecoveryId": 0,
            "IsRecoverable": false
        },
        "TxnTypeJSON": 27
    },
    "TransactionHex": "0135c32fa616d86ab3bae1826e68984ad74ab7b735944405188c3b1ade819b479a00010342d943b8dba93a4ce29b858479c67f1e4f1110eecbe1f83dc01b455eb8b123b3b88cebdc031b5421035fffa069040c043cd1f3b161601bfe740c79c43d6ebcdcc5126d1c3bd8ac44e0210258bf142b43f402146e2d072c9ef313d863f8f45a95f7d5ace61df57fd8befc5d0b454e444f5253454d454e540353514c210342d943b8dba93a4ce29b858479c67f1e4f1110eecbe1f83dc01b455eb8b123b30106506565724944014100",
    "TxnHashHex": "7a8fec83970a0a564467c05ecf335b86d596ba090012584e34c691641ce70d3f"
}

Delete user association

POST /api/v0/user-associations/delete

Creates a delete user association transaction. The transaction needs to be signed and submitted through /api/v0/submit-transaction before changes come into effect.

Implementation in backend

Request Body

Name
Type
Description

TransactorPublicKeyBase58Check*

String

The public key of the user creating the transaction

AssociationID*

String

The identifier of the association to delete

ExtraData

map[String]String

Any additional arbitrary key-value data to include with the transaction

MinFeeRateNanosPerKB*

uint64

The minimum fee rate (in nanos) per kb

TransactionFees

[]TransactionFee

Array of

TransactionFee

objects that define additional outputs that need to be added to this transaction

Post Associations

Create post association

POST /api/v0/post-associations/create

Creates a create post association transaction. The transaction needs to be signed and submitted through /api/v0/submit-transaction before changes come into effect.

Implementation in backend

Request Body

Name
Type
Description

TransactorPublicKeyBase58Check*

String

The public key of the user creating the transaction

PostHashHex*

String

The identifier of the post to which the association is referencing

AppPublicKeyBase58Check

String

The public key of the application on which the association is being created

AssociationType*

String

The association type

AssociationValue*

String

The association value

ExtraData

map[String]String

Any additional arbitrary key-value data to store with the association

MinFeeRateNanosPerKB*

uint64

The minimum fee rate (in nanos) per kb

TransactionFees

[]TransactionFee

Array of

TransactionFee

objects that define additional outputs that need to be added to this transaction

Delete post association

POST /api/v0/post-associations/delete

Creates a delete post association transaction. The transaction needs to be signed and submitted through /api/v0/submit-transaction before changes come into effect.

Implementation in backend

Request Body

Name
Type
Description

TransactorPublicKeyBase58Check*

String

The public key of the user creating the transaction

AssociationID

String

The identifier of the association being deleted

ExtraData

map[String]String

Any additional arbitrary key-value data to include with the transaction

MinFeeRateNanosPerKB*

uint64

The minimum fee rate (in nanos) per kb

TransactionFees

[]TransactionFee

Array of

TransactionFee

objects that define additional outputs that need to be added to this transaction

Last updated

Was this helpful?