Solana
The Staking API responses will adhere to standard HTTP response conventions. Importantly, the platform performs business validations on all POST request messages to ensure that each request contains accurate and complete information. The business validation failures will be responded to with an HTTP 400, while any internal processing errors identified will be responded to with an HTTP 500.
This endpoint allows clients to initiate staking by creating and funding a new stake account on the Solana blockchain.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform. If not provided, a default participant will be assigned.
Participant 1The account name registered on the platform. If not provided, a default account linked to the participant will be assigned.
Participant 1_acc1The network on which the stake account should be created. Valid values are mainnet, testnet, devnet
mainnetThe Solana account address that will be funding the stake account.
G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8The amount of SOL that should be sent to the stake account.
1.5The Solana account address that should sign all stake account related actions (Delegation, Undelegation, Split and Merge). If not provided will default to the “funding_pubkey”.
G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8The Solana account address that should sign withdrawal transactions. If not provided will default to the “funding_pubkey”.
G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8Successfully created the new stake account.
Validation error.
Internal server error.
POST /v1/solana/delegators/stake-account HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 306
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "network": "mainnet",
  "funding_pubkey": "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8",
  "amount": 1.5,
  "stake_authority_pubkey": "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8",
  "withdraw_authority_pubkey": "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jsgd8"
}{
  "stake_account_pubkey": "JBwWBWQgSDpXt8rvrnYHkYFLpwwUqWVW3P7NJ2SpdcFo",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}Clients use this endpoint to submit a transaction hash of a signed payload independently broadcasted to the blockchain. the platform verifies the transaction status and updates the corresponding stake account position accordingly.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The address for which the signed transaction is being sent.
77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18The action for which the payload is applicable. Valid values are stake_account_creation, delegate, undelegate, withdraw, transfer, split, merge.
delegateThe transaction hash retrieved from the blockchain after broadcasting the signed transaction.
2qEA2oQaRKFtpsgfEXLRGBi2qNfATWmygvrz3agdMS7N9xMYw2wbJkykkeYNJ6pEffftMZupCbg2woETmE15iDZwThe destination address for which the signed transaction is being sent. Will be required if the action is one of withdraw, transfer, split, merge.
6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnXSuccessfully verified the transaction status.
Validation error.
Internal server error.
POST /v1/solana/delegators/transaction HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 268
{
  "stake_account_pubkey": "77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18",
  "action": "delegate",
  "tx_hash": "2qEA2oQaRKFtpsgfEXLRGBi2qNfATWmygvrz3agdMS7N9xMYw2wbJkykkeYNJ6pEffftMZupCbg2woETmE15iDZw",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX"
}{
  "stake_account_pubkey": "77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "action": "delegate",
  "tx_hash": "2qEA2oQaRKFtpsgfEXLRGBi2qNfATWmygvrz3agdMS7N9xMYw2wbJkykkeYNJ6pEffftMZupCbg2woETmE15iDZw",
  "tx_status": "confirmed"
}Accepts a signed transaction payload and broadcasts it to the Solana network.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The address for which the signed transaction is being sent. Required for actions like delegate, withdraw, split.
77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18The action for which the payload is applicable. Valid values are stake_account_creation, delegate, undelegate, withdraw, split, merge, transfer.
delegateThe hexadecimal encoded serialized signed transaction corresponding to the unsigned transaction created via respective endpoint.
AVubIXkY58h7SWVybmV4LfQMi0LzDjI/6a0kqmkSnqkgsbELvca/u6K+cj+EnH2ZbMoczzdZSJHdvkZpcb8ojQ4BAAUHHemcMq/s9GReFNveg0cxx0Y8/+tmySLLzJM+4IJMROZayWI6FtCwSthWivKewpfc+PjVkFFuzgpLyEtIYz3c6930KgSAClTeLlg/lPF7CJclt3LRMzUmJxJBUyd20v/GBqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAAGodgXpQIFC2gHkebObbiOHltxUPYfxnkKTrTRAAAAAAan1RcYx3TJKFZjmGkdXraLXrijm0ttXHNVWyEAAAAABqfVFxk1hND+7ZuzQx0TIGvlRCgbV7hWbMU3X/QAAABKpClAbBa5nzget5in1jkJZczarGXeb81KiNLzOFG9lQEDBgECBQYEAAQCAAAAThe destination address for which the signed transaction is being sent. Will be required if the action is one of the following - withdraw, split, merge, transfer.
6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnXSuccessfully broadcasted the signed transaction.
Validation error.
Internal server error.
POST /v1/solana/delegators/signed-transaction HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 635
{
  "stake_account_pubkey": "77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18",
  "action": "delegate",
  "tx_payload": "AVubIXkY58h7SWVybmV4LfQMi0LzDjI/6a0kqmkSnqkgsbELvca/u6K+cj+EnH2ZbMoczzdZSJHdvkZpcb8ojQ4BAAUHHemcMq/s9GReFNveg0cxx0Y8/+tmySLLzJM+4IJMROZayWI6FtCwSthWivKewpfc+PjVkFFuzgpLyEtIYz3c6930KgSAClTeLlg/lPF7CJclt3LRMzUmJxJBUyd20v/GBqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAAGodgXpQIFC2gHkebObbiOHltxUPYfxnkKTrTRAAAAAAan1RcYx3TJKFZjmGkdXraLXrijm0ttXHNVWyEAAAAABqfVFxk1hND+7ZuzQx0TIGvlRCgbV7hWbMU3X/QAAABKpClAbBa5nzget5in1jkJZczarGXeb81KiNLzOFG9lQEDBgECBQYEAAQCAAAA",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX"
}{
  "stake_account_pubkey": "77PoG13uysZN2mXTACpGV3HCN2v14p894fzYxmjP2p18",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "action": "delegate",
  "tx_hash": "2qEA2oQaRKFtpsgfEXLRGBi2qNfATWmygvrz3agdMS7N9xMYw2wbJkykkeYNJ6pEffftMZupCbg2woETmE15iDZw",
  "tx_status": "confirmed"
}Delegates a stake address to a specified validator address.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform. If not provided, a default participant will be assigned.
Participant 1The account name registered on the platform. If not provided, a default account linked to the participant will be assigned.
Participant 1_acc1The stake account that should be delegated.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The validator address under which the stake account should be delegated.
FwR3PbjS5iyqzLiLugrBqKSa5EKZ4vK9SKs7eQXtT59fThe Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the Stake Authority of the stake account.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZDelegation request processed successfully. Returns the unsigned transaction and related details.
Validation error.
Internal server error.
POST /v1/solana/delegators/delegate HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 257
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "validator_pubkey": "FwR3PbjS5iyqzLiLugrBqKSa5EKZ4vK9SKs7eQXtT59f",
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "validator_pubkey": "FwR3PbjS5iyqzLiLugrBqKSa5EKZ4vK9SKs7eQXtT59f",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}This endpoint allows clients to undelegate stake accounts
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform. If not provided, a default participant will be assigned.
Participant 1The account name registered on the platform. If not provided, a default account linked to the participant will be assigned.
Participant 1_acc1The stake account that should be undelegated.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the Stake Authority of the stake account.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZUndelegation request processed successfully. Returns the unsigned transaction and related details.
Validation error.
Internal server error.
POST /v1/solana/delegators/undelegate HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 191
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}Clients can use this endpoint to split the balance of a stake account into a new stake account.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default participant.
Participant 1The account name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default account linked to the participant.
Participant 1_acc1The stake account that should be split.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The amount of SOL that should be split from the existing stake account to the newly created stake account.
1.2The Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the stake authority of the stake account.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZSplit request processed successfully. Returns the unsigned transaction and related details.
Validation error.
Internal server error.
POST /v1/solana/delegators/split HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 204
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "amount": 1.2,
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "source_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1w",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}Merge two stake accounts that share the same stake and withdrawal authorities into a single stake account
This endpoint allows clients to merge stake accounts that share the same stake and withdrawal authorities into a single stake account
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default participant.
Participant 1The account name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default account linked to the participant.
Participant 1_acc1The stake account that should be merged into the destination account.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The stake account that the source account will be merged into.
6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnXThe Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the stake authority of the stake accounts.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZMerge request processed successfully. Returns the unsigned transaction and related details.
Validation error.
Internal server error.
POST /v1/solana/delegators/merge HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 268
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "source_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "source_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1w",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}Transfer SOL from a Solana account (wallet) to a stake account. The transaction will be unsigned and returned for signing.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default participant.
Participant 1The account name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default account linked to the participant.
Participant 1_acc1The Solana account (wallet) from which SOL will be transferred out of.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The stake account into which SOL will be transferred.
6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnXThe amount of SOL to be transferred to the stake account.
0.5The Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the ‘source_account_pubkey’.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZTransfer request processed successfully. Returns the unsigned transaction and related details.
Validation error.
Internal server error.
POST /v1/solana/delegators/transfer HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 281
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "source_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "destination_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "amount": 0.5,
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "from_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "to_account_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1w",
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}Withdraw undelegated SOL from stake accounts. Withdrawals can be made from a stake account to a Solana account (wallet) or between stake accounts.
MIME type of the request body.
application/jsonMIME type of the request body.
application/jsonAPI key for authentication.
Bearer token for authentication.
The participant name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default participant.
Participant 1The account name registered on the platform that corresponds to the client’s customer. If not provided, requests will be assigned to a default account linked to the participant.
Participant 1_acc1The stake account from which SOL should be withdrawn.
BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3The stake account or Solana account (wallet) to which the withdrawn SOL will be transferred. If not provided the withdrawal will be done to the funding account of the stake account.
6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnXThe amount of SOL that should be withdrawn. The amount should be sent without trailing zeros.
1.2The Solana account address that should pay the fees related to the transaction. If not provided fees should be paid by the Withdraw Authority of the stake account.
31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2ZWithdrawal request processed successfully. Returns the unsigned transaction details.
Validation error.
Internal server error.
POST /v1/solana/delegators/withdraw HTTP/1.1
Host: 
Accept: application/json
Content-Type: application/json
X-API-KEY: text
Authorization: text
Content-Length: 270
{
  "participant": "Participant 1",
  "account": "Participant 1_acc1",
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "recipient_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "amount": 1.2,
  "fee_payer": "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
}{
  "stake_account_pubkey": "BvdHdA7SLDW32XR3Sm3uZpGDpNJZU3FQzGRGoSmkE1G3",
  "recipient_pubkey": "6fT3SrMwTgGNWdwHv27JTmbvc8q3cKx4tAggxEX1wmnX",
  "amount": 1.2,
  "unsigned_tx": "AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0+lqa9HL7rk5GnqOh8e05Ds01fH62JTIbuQ9yko+LpbGVWb+MvfBZvlZy5xLpgVcgTJ2eI5S4ZiYkxcyxdv0DAgADBd/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/e/2Qc2wJPjPPukVhD06bwv9VOltLo6SP72QDr+o+pgTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAah2BeRN1QqmDQ3vf4qerJVf1NcinhyK2ikncAAAAAABqfVFxksXFEhjMlMPUrxf1ja7gibof1E49vZigAAAADaIFlGgWVF2xn6jQ5FbNW/q7opjqsQQJaSRC/6qyTQwwICAgABNAAAAACAYalHAAAAAMgAAAAAAAAABqHYF5E3VCqYNDe9/ip6slV/U1yKeHIraKSdwAAAAAADAgEEdAAAAADfw3jThwAU40PGi+ivJS7LykLgQPUfAKvEfjiy53Cf3t/DeNOHABTjQ8aL6K8lLsvKQuBA9R8Aq8R+OLLncJ/eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
  "signers": [
    "G4UnzgWwzsEAJG5ATd7MGEGzjeWj4s5vXWczBE3jFeV3",
    "31mRtwpfEv4GHRGSzZuqyU7XAtDne7x8BSwANgun8r2Z"
  ],
  "created_at": "2024-11-29T05:19:02.644Z"
}The endpoint to retrieve a list of delegators returns the details of the stake accounts monitored by a given client that fit the specified filter criteria in a paginated manner. If no filtration criteria is provided, the endpoint will retrieve a list of all the stake accounts applicable to the client. All timestamp fields in the response are in UTC.
The current page number requested by the client, if not specified, should be defaulted to 1.
1The number of entries per page, if not presented in the request, should be defaulted to the maximum value of 250.
250application/jsonapplication/json<API Key>Bearer <JWT>The network under which the stake accounts will be returned.
The participant under which the stake accounts will be returned.
The account under which the stake accounts will be returned.
List of delegator stake accounts to fetch the delegator information. A maximum of 50 entries are allowed.
Sample success response payload. See Response schema below for wrapper
Validation error.{ "client_req_id":"49bf80cb-c7ca-4082-a526-8afab545cc62", "error":[{ "code":10600, "message":"unsupported network specified in the request" }]}
Internal server error.{ "error":[{ "code":15004, "message":"Ooops..! There was an error occurred when processing the delegator monitoring request. Please try again" }]}
POST /v1/solana/delegators HTTP/1.1
Host: 
Authorization: Bearer <JWT>
Accept: application/json
Content-Type: application/json
X-API-KEY: <API Key>
Content-Length: 100
{
  "network": "text",
  "participant": "text",
  "account": "text",
  "status": "ACTIVE",
  "stake_accounts": [
    "text"
  ]
}Sample success response payload. See Response schema below for wrapper
{
  "network": "mainnet",
  "page": 1,
  "total": 250,
  "data": {
    "status": "ACTIVE",
    "validator_info": {
      "address": "2yoofMr4N78WPxVK8MU8Yy26dfRZbPw5WDzTRCA9uv95"
    },
    "stake_account": "2yoofMr4N78WPxVK8MU8Yy26dfRZbPw5WDzTRCA9uv95",
    "balance_in_lamports": 1,
    "balance_in_sol": 1.38,
    "provision_info": {
      "id": "VMP2285150508",
      "created_at": "2024-09-04 10:25:24"
    }
  }
}The rewards endpoint returns rewards accrued by a stake account. This endpoint accepts the filtering by start and end (can be epoch or date), and delegator address (stake account) public keys. This endpoint returns the rewards since stake account inception, accrued rewards in the specified period and epoch-wise rewards breakdown for the specified period.
The current page number requested by the client, if not specified, should be defaulted to 1.
The number of entries per page, if not presented in the request, should be defaulted to the maximum value of 250.
application/jsonapplication/json<API Key>Bearer <JWT>The network on which validators should be created. Supported values
mainnettestnetdevnetIt specifies the start epoch if the type is 1, or the start date in the "YYYY-MM-DD" format (UTC timezone) if the type is 2.
200000It specifies the end epoch if the type is 1, or the end date in the "YYYY-MM-DD" format (UTC timezone) if the type is 2.
200100Denotes the granularity of rewards breakdown. The possible values are,
12List of delegator stake accounts to fetch the rewards breakdown. A maximum of 50 entries are allowed.
Sample success response payload. See Response schema below for wrapper
Validation error.{ "client_req_id":"49bf80cb-c7ca-4082-a526-8afab545cc62", "error":[{ "code":10700, "message":"invalid type parameter specified in the request" }]}
Internal server error.{ "error":[{ "code":15006, "message":"Ooops..! There was an error occurred when processing the rewards request. Please try again" }]}
POST /v1/solana/delegators/rewards HTTP/1.1
Host: 
Authorization: Bearer <JWT>
Accept: application/json
Content-Type: application/json
X-API-KEY: <API Key>
Content-Length: 97
{
  "network": "mainnet",
  "start": "200000",
  "end": "200100",
  "rollup_type": "1",
  "stake_accounts": [
    "text"
  ]
}Sample success response payload. See Response schema below for wrapper
{
  "network": "mainnet",
  "start": "100",
  "end": "450",
  "page": 1,
  "total": 250,
  "data": [
    {}
  ]
}The monitoring endpoint must be invoked by the client to retrieve and monitor delegator addresses (stake accounts) in the platform. Clients can send a request containing a list of the delegator addresses that require monitoring, and positions corresponding to each delegator address will be created on the platform.
application/jsonapplication/json<API Key>Bearer <JWT>The network on which validators should be created. Supported values.
mainnettestnetdevnetThe address of the validator under which the stake account is delegating SOL.
49bf80cb-c7ca-4082-a526-8afab545cc62A list containing the information of the delegator addresses that will be monitored on the platform.
{ "delegator_monitoring_reference_id":"VMP2285150508",}
Validation error.{ "client_req_id":"49bf80cb-c7ca-4082-a526-8afab545cc62", "error":[{ "code":10600, "message":"unsupported network specified in the request" }]}
Internal server error.{ "error":[{ "code":15004, "message":"Ooops..! There was an error occurred when processing the delegator monitoring request. Please try again" }]}
POST /v1/solana/delegators/monitoring HTTP/1.1
Host: 
Authorization: Bearer <JWT>
Accept: application/json
Content-Type: application/json
X-API-KEY: <API Key>
Content-Length: 207
{
  "network": "mainnet",
  "validator_address": "49bf80cb-c7ca-4082-a526-8afab545cc62",
  "delegators": [
    {
      "stake_accounts": [
        "8hyH1vCWstfPxPuoBJX6dYb3HxyzHSN765ZSVfqVBfFB"
      ],
      "participant": "BitGo",
      "account": "2268-Test"
    }
  ]
}{ "delegator_monitoring_reference_id":"VMP2285150508",}
No content
It will be required to configure a new endpoint to retrieve validator level information for Solana validators
Applicable values are mainnet, testnet and devnet
The public key of the validator
application/jsonapplication/json<API Key>Bearer <JWT>Sample success response payload. See Response schema below for wrapper
Validation error.{ "client_req_id":"49bf80cb-c7ca-4082-a526-8afab545cc62", "error":[{ "code":10600, "message":"unsupported network specified in the request" }]}
Internal server error.{ "error":[{ "code":15004, "message":"Ooops..! There was an error occurred when processing the delegator monitoring request. Please try again" }]}
GET /v1/solana/{network}/validators/{validator_address} HTTP/1.1
Host: 
Authorization: Bearer <JWT>
Accept: application/json
Content-Type: application/json
X-API-KEY: <API Key>
Sample success response payload. See Response schema below for wrapper
{
  "network": "mainnet",
  "apy": 6.784,
  "validator_address": "CvSb7wdQAFpHuSpTYTJnX5SYH4hCfQ9VuGnqrKaKwycB",
  "validator_status": "ACTIVE",
  "delegated_balance": 50380.2581
}This request will return the information regarding a single delegator which is being monitored by the staking partner
Applicable values are mainnet, testnet and devnet
The public key of the stake account belonging to the delegator.
application/jsonapplication/json<API Key>Bearer <JWT>Sample success response payload. See Response schema below for wrapper
Validation error.{ "client_req_id":"49bf80cb-c7ca-4082-a526-8afab545cc62", "error":[{ "code":10600, "message":"unsupported network specified in the request" }]}
Internal server error.{ "error":[{ "code":15004, "message":"Ooops..! There was an error occurred when processing the delegator monitoring request. Please try again" }]}
GET /v1/solana/{network}/delegators/{stake_account} HTTP/1.1
Host: 
Authorization: Bearer <JWT>
Accept: application/json
Content-Type: application/json
X-API-KEY: <API Key>
Sample success response payload. See Response schema below for wrapper
{
  "network": "mainnet",
  "status": "ACTIVE",
  "validator_info": {
    "address": "2yoofMr4N78WPxVK8MU8Yy26dfRZbPw5WDzTRCA9uv95"
  },
  "stake_account": "2yoofMr4N78WPxVK8MU8Yy26dfRZbPw5WDzTRCA9uv95",
  "balance_in_lamports": 1,
  "balance_in_sol": 1.38,
  "provision_info": {
    "id": "VMP2285150508",
    "created_at": "2024-09-04 10:25:24"
  }
}Last updated
