openapi: 3.2.0 info: version: 1.0.0 title: Staking Cosmos API description: 'The Blockdaemon Staking API simplifies and streamlines institutional cryptocurrency staking. The API allows developers to interact with blockchain networks and perform various staking-related operations, such as delegating and undelegating tokens, in a single, unified interface. With the Staking API, you can quickly and easily build and deploy applications that automate staking activities and increase efficiency in your blockchain operations.' contact: name: Blockdaemon email: info@blockdaemon.com url: https://blockdaemon.com x-logo: url: https://assets-global.website-files.com/633c5e06513fa35f3391a5f9/645d33beb6fa65f6cfb95eb8_BD%20Logo%20Stack%20-%20Purple.svg backgroundColor: '#fafafa' altText: Blockdaemon logo servers: - url: https://svc.blockdaemon.com/boss security: - ApiKeyAuth: [] tags: - name: Cosmos description: Cosmos endpoints paths: /v1/cosmos/{network}/deactivatable-amount: parameters: - $ref: '#/components/parameters/CosmosNetwork' - $ref: '#/components/parameters/CosmosWallets' get: summary: Get Deactivatable Amount operationId: getCosmosDeactivatableAmount tags: - Cosmos description: 'Returns the total staked amount that can be deactivated across all wallets of the user. You can specify the optional `wallets` parameter to get the total deactivatable amount in specific wallets.' responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/CosmosDeactivatableAmount' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] /v1/cosmos/{network}/deactivation-intents: parameters: - $ref: '#/components/parameters/CosmosNetwork' post: summary: Post Deactivation Intent operationId: postCosmosDeactivationIntent tags: - Cosmos description: Create transaction to undelegate given amount of ATOMs from a validator. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewDeactivateIntentCosmos' responses: '200': description: Created content: application/json: schema: $ref: '#/components/schemas/CosmosDeactivationIntentResponse' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] get: summary: Lists Deactivation Intents operationId: getCosmosDeactivationIntents tags: - Cosmos description: Retrieve a list of deactivation intents. responses: '200': description: Deactivation intents listed content: application/json: schema: $ref: '#/components/schemas/DeactivationIntents' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] /v1/cosmos/{network}/restake-intents: parameters: - $ref: '#/components/parameters/CosmosNetwork' post: summary: Post restake Intent operationId: postCosmosRestakeIntent tags: - Cosmos description: Create transaction to move given amount of ATOMs from one validator to another. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewRestakeIntentCosmos' responses: '201': $ref: '#/components/responses/RestakeIntent' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] get: summary: Lists Restake Intents operationId: getCosmosRestakeIntents tags: - Cosmos description: List restake intents responses: '200': description: Restake intents listed content: application/json: schema: $ref: '#/components/schemas/RestakeIntents' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] /v1/cosmos/{network}/rewards/withdrawable-amount: parameters: - $ref: '#/components/parameters/CosmosNetwork' - $ref: '#/components/parameters/CosmosWallets' get: summary: Get Withdrawable Rewards Amount operationId: getCosmosWithdrawableRewardsAmount tags: - Cosmos description: 'Returns the total accumulated rewards amount that can be withdrawn across all wallets of the user. You can specify the optional `wallets` parameter to get the total accumulated rewards amount in specific wallets.' responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/CosmosWithdrawableRewardsAmount' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] /v1/cosmos/{network}/rewards/withdrawal-intents: parameters: - $ref: '#/components/parameters/CosmosNetwork' post: summary: Post Rewards Withdrawal Intent operationId: postCosmosRewardsWithdrawalIntent tags: - Cosmos description: Creates a new withdrawal intent that withdraws only the accumulated rewards. Staked tokens stay untouched and keep earning rewards. requestBody: required: true content: application/json: schema: x-go-type: interface{} oneOf: - $ref: '#/components/schemas/NewRewardsWithdrawIntentCosmos' responses: '200': $ref: '#/components/responses/RewardsWithdrawIntentCosmos' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' security: - ApiKeyAuth: [] /v1/cosmos/{network}/stake-intents: parameters: - $ref: '#/components/parameters/CosmosNetwork' - $ref: '#/components/parameters/IdempotencyKey' post: summary: Post Stake Intent operationId: postCosmosStakeIntent tags: - Cosmos description: Blockdaemon reserves the right to free any allocated resources if the transaction is not confirmed in time. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewStakeIntentCosmos' responses: '200': description: Created content: application/json: schema: $ref: '#/components/schemas/CosmosStakeIntentResponse' '400': $ref: '#/components/responses/InvalidRequest' '401': $ref: '#/components/responses/Unauthorized' '500': $ref: '#/components/responses/InternalServerError' '503': $ref: '#/components/responses/NoValidatorsError' security: - ApiKeyAuth: [] components: parameters: IdempotencyKey: in: header name: Idempotency-Key description: the unique idempotency key for this request example: f1c971b4-7114-4c4b-8ad2-a6f9e33e2cd0 schema: type: string format: uuid required: false CosmosNetwork: name: network in: path description: Cosmos network required: true schema: $ref: '#/components/schemas/CosmosNetwork' CosmosWallets: name: wallets description: Array of Cosmos wallets in: query required: false schema: type: array items: $ref: '#/components/schemas/CosmosAccountAddress' schemas: WalletAmount: type: object description: Amount per wallet required: - wallet - amount - validator properties: wallet: type: string amount: type: string pattern: ^[1-9]\d+$ validator: type: string StakeIntentCosmos: type: object description: Cosmos Stake Intent response required: - unsigned_transaction - amount - delegator_address - validator_address properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' validator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' hex_transaction: $ref: '#/components/schemas/ProcessedComosTransaction' PlanId: type: string description: This feature enables you to stake to validators from the specified plan(s). When no plan id is specified, validators across all plans that match the API route will be available for staking. If it is a shared plan, you can to stake to validators on a shared node from the specified plan. example: plan_Wgx98Rbi8nQuL9ddn3mTk1 CosmosDeactivatableAmount: type: object description: The deactivatable amount required: - protocol - network - amount - currency properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' currency: $ref: '#/components/schemas/CosmosUatom' amount: type: string pattern: ^[1-9]\d+$ example: '123456' wallets: type: array items: $ref: '#/components/schemas/WalletAmount' BinanceNetwork: type: string description: Binance beacon chain network enum: - mainnet - testnet Network: type: string description: Protocol-specific network. enum: - mainnet - localnet - goerli - prater - hoodi - testnet - devnet - kusama - westend - preprod - fuji - local UnsignedTransactionHash: type: string format: base64 description: A generated transaction that is ready to sign. example: '120000007465737477616c6c65742e746573746e65740025150c44ecddfe779c2ca ' CosmosPublicKeyType: type: string description: Cosmos public key types enum: - ed25519 - secp256k1 SolanaNetwork: type: string description: Solana network enum: - mainnet - testnet NewRewardsWithdrawIntentCosmos: type: object description: Request object to create a new rewards withdrawal intent for Cardano. required: - delegator_address properties: delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' plan_id: $ref: '#/components/schemas/PlanId' NearAddress: type: string description: Base58 encoded public key or registered named account. [Accounts](https://docs.near.org/concepts/basics/accounts/account-id/). pattern: ^([a-km-zA-HJ-NP-Z1-9]{22,44})|((([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+)$ example: alice.near CosmosRewardsWithdrawIntent: type: object required: - unsigned_transaction - delegator_address - validator_address - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' validator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' hex_transaction: $ref: '#/components/schemas/ProcessedComosTransaction' DeactivateIntentNear: type: object description: NEAR Protocol Deactivate Intent required: - to - unsigned_transaction - unsigned_transaction_hash - amount - wallet_address - public_key - expiration_time properties: to: $ref: '#/components/schemas/NearAddress' unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' unsigned_transaction_hash: $ref: '#/components/schemas/UnsignedTransactionHash' amount: $ref: '#/components/schemas/NearYocto' wallet_address: $ref: '#/components/schemas/NearAddress' public_key: $ref: '#/components/schemas/NearPublicKey' expiration_time: $ref: '#/components/schemas/ExpirationTime' DeactivateIntentBinance: type: object description: Binance Deactivate Intent required: - unsigned_transaction - delegator_address - validator_address - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/BinanceAccountAddress' validator_address: $ref: '#/components/schemas/BinanceValidatorAddress' amount: $ref: '#/components/schemas/BinanceJager' DeactivateIntentCosmos: type: object description: Cosmos Deactivate Intent required: - unsigned_transaction - delegator_address - validator_address - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' validator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' hex_transaction: $ref: '#/components/schemas/ProcessedComosTransaction' NewDeactivateIntentCosmos: type: object description: Request object to create a new deactivation intent for Cosmos. required: - delegator_address - amount properties: delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' plan_id: $ref: '#/components/schemas/PlanId' DeactivateIntentId: type: string format: uuid description: Unique idenifier for deactivate intent. example: 4ba06e89-8c29-483e-ac36-318de5aa7364 CosmosWithdrawableRewardsAmount: type: object description: The withdrawable rewards amount required: - protocol - network - amount - currency properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' currency: $ref: '#/components/schemas/CosmosUatom' amount: type: string pattern: ^[1-9]\d+$ example: '123456' wallets: type: array items: $ref: '#/components/schemas/WalletAmount' EthereumAddress: type: string description: Hex-encoded Ethereum [account or smart contract address](https://ethereum.org/en/developers/docs/accounts/). format: hex pattern: ^0x[a-fA-F0-9]{40}$ example: '0x00000000219ab540356cBB839Cbe05303d7705Fa' DeactivationIntents: type: object description: Deactivation intents required: - protocol - network - customer_id properties: protocol: $ref: '#/components/schemas/Protocol' network: $ref: '#/components/schemas/Network' polygon: $ref: '#/components/schemas/DeactivationIntentsPolygon' solana: $ref: '#/components/schemas/DeactivationIntentsSolana' near: $ref: '#/components/schemas/DeactivationIntentsNear' cardano: $ref: '#/components/schemas/DeactivationIntentsCardano' cosmos: $ref: '#/components/schemas/DeactivationIntentsCosmos' binance: $ref: '#/components/schemas/DeactivationIntentsBinance' customer_id: $ref: '#/components/schemas/CustomerId' Lamport: type: string description: Denomination of the cryptocurrency Solana. pattern: ^[1-9]\d+$ example: '100' ExpirationTime: type: integer description: Transaction expiration time format: int64 example: 1689939023 NearPublicKey: type: string description: Base58 encoded public key prefixed by ed25519, associated with the private key that will be used to sign the transaction. example: ed25519:Cxg2wgFYrdLTEkMu6j5D6aEZqTb3kXbmJygS48ZKbo1S pattern: ^ed25519:[a-km-zA-HJ-NP-Z1-9]{22,44}$ SplitStakeSolana: type: object description: Result of the split transaction request required: - unsigned_transaction - stake_account_authority - new_stake_account_address - new_stake_id - splitted_stake_account_address - splitted_stake_id - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' stake_account_authority: $ref: '#/components/schemas/SolanaPublicKey' new_stake_account_address: $ref: '#/components/schemas/SolanaPublicKey' new_stake_id: $ref: '#/components/schemas/StakeId' splitted_stake_account_address: $ref: '#/components/schemas/SolanaPublicKey' splitted_stake_id: $ref: '#/components/schemas/StakeId' amount: $ref: '#/components/schemas/Lamport' RestakeIntentCosmos: type: object description: Cosmos Restake Intent required: - unsigned_transaction - delegator_address - old_validator_address - new_validator_address - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' old_validator_address: $ref: '#/components/schemas/CosmosAccountAddress' new_validator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' hex_transaction: $ref: '#/components/schemas/ProcessedComosTransaction' BinanceProtocol: type: string description: Binance beacon chain protocol enum: - binance CosmosProtocol: type: string description: Cosmos protocol enum: - cosmos SolanaDeactivationIntentResponse: allOf: - $ref: '#/components/schemas/CommonDeactivationResponse' - type: object description: Response to a new deactivation intent request. required: - network - protocol - solana properties: protocol: $ref: '#/components/schemas/SolanaProtocol' network: $ref: '#/components/schemas/SolanaNetwork' solana: $ref: '#/components/schemas/DeactivateIntentSolana' NearNetwork: type: string description: NEAR network enum: - mainnet - testnet - localnet CosmosRestakeIntentResponse: allOf: - $ref: '#/components/schemas/CommonRestakeResponse' - type: object description: Response to a new restake intent request. required: - protocol - network - cosmos properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' cosmos: $ref: '#/components/schemas/RestakeIntentCosmos' RestakeIntentsBinance: type: array description: List of restake intents items: $ref: '#/components/schemas/BinanceRestakeIntentResponse' SolanaProtocol: type: string description: Solana protocol enum: - solana StakeIntentId: type: string format: base58 description: Unique idenifier for a group of stakes. example: stake_intent_Wgx98Rbi8nQuL9ddn3mTk1 RestakeIntents: type: object description: Restake intents required: - protocol - network - customer_id properties: protocol: $ref: '#/components/schemas/Protocol' network: $ref: '#/components/schemas/Network' cosmos: $ref: '#/components/schemas/RestakeIntentsCosmos' binance: $ref: '#/components/schemas/RestakeIntentsBinance' customer_id: $ref: '#/components/schemas/CustomerId' CommonDeactivationResponse: type: object required: - deactivate_intent_id - customer_id properties: deactivate_intent_id: $ref: '#/components/schemas/DeactivateIntentId' customer_id: $ref: '#/components/schemas/CustomerId' CustomerId: type: string description: Unique identifier for a customer example: SatoshiNakamoto-xUYJbPw9hw minimum: 1 BinanceAccountAddress: type: string description: Binance beacon chain address. format: bech32 pattern: ^bnb[0-9a-z]+$ example: bnb13ym5szfmwh0wz9j8wr2lu2gaml94h895u9el2e CosmosPublicKey: type: object description: Cosmos public key description required: - value - type properties: value: type: string description: Public Key of an asymmetric key-pair. format: base64 example: MTIzMDl3c2hka2Fqc2RoYXNramQ4OTEyM25oamtzaGRrcWplZ type: $ref: '#/components/schemas/CosmosPublicKeyType' DeactivationIntentsNear: type: array description: List of deactivation intents items: $ref: '#/components/schemas/NearDeactivationIntentResponse' Protocol: type: string description: Blockchain protocol. enum: - ethereum - polkadot - solana - cosmos - polygon - near - cardano - avalanche - binance CommonStakeIntentResponse: type: object required: - stake_intent_id - customer_id properties: stake_intent_id: $ref: '#/components/schemas/StakeIntentId' customer_id: $ref: '#/components/schemas/CustomerId' plan_id: $ref: '#/components/schemas/PlanId' Unbond: type: object description: Unbond information required: - nonce - amount - withdraw_epoch properties: nonce: $ref: '#/components/schemas/Nonce' amount: $ref: '#/components/schemas/Wei' withdraw_epoch: type: integer RewardsWithdrawIntentCosmos: type: object required: - protocol - network - cosmos - customer_id properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' cosmos: $ref: '#/components/schemas/CosmosRewardsWithdrawIntent' customer_id: $ref: '#/components/schemas/CustomerId' ProcessedComosTransaction: type: object description: Returns back the transactionHash and unsignedTxHex for signing purposes required: - transactionHash - unsignedTxHex properties: transaction_hash: type: string description: The SHA-256 hash of the signable transaction in hexadecimal format. example: BD2B84693A0AE959C63A8D4D1F77125449312EED64E53C654D2D7F07E4592BAE unsigned_transaction_hex: type: string description: The original unsigned transaction encoded in hexadecimal format. example: APOENA93A0AE959C63A8D4D1F77125449312EED64E53C654D2D7F07E4592BAAF CommonRestakeResponse: type: object required: - restake_intent_id - customer_id properties: restake_intent_id: $ref: '#/components/schemas/RestakeIntentId' customer_id: $ref: '#/components/schemas/CustomerId' DeactivationIntentsCosmos: type: array description: List of deactivation intents items: $ref: '#/components/schemas/CosmosDeactivationIntentResponse' Error: type: object description: Error response envelope required: - code - message properties: code: type: integer format: int32 description: Error code example: 500 message: type: string description: Error Message example: A descriptive error message BinanceRestakeIntentResponse: allOf: - $ref: '#/components/schemas/CommonRestakeResponse' - type: object description: Response to a new restake intent request. required: - protocol - network - binance properties: protocol: $ref: '#/components/schemas/BinanceProtocol' network: $ref: '#/components/schemas/BinanceNetwork' binance: $ref: '#/components/schemas/RestakeIntentBinance' CosmosNetwork: type: string description: Cosmos network enum: - mainnet - testnet NewRestakeIntentCosmos: type: object description: Request object to create a new restake intent for Cosmos. required: - delegator_address - old_validator_address - amount properties: delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' old_validator_address: $ref: '#/components/schemas/CosmosAccountAddress' amount: $ref: '#/components/schemas/CosmosUatom' plan_id: $ref: '#/components/schemas/PlanId' RestakeIntent: allOf: - $ref: '#/components/schemas/CommonRestakeResponse' - type: object description: Request object to create a new restake intent. required: - protocol - network properties: protocol: $ref: '#/components/schemas/Protocol' network: $ref: '#/components/schemas/Network' cosmos: $ref: '#/components/schemas/RestakeIntentCosmos' binance: $ref: '#/components/schemas/RestakeIntentBinance' DeactivationIntentsPolygon: type: object required: - items - wallet_address properties: items: type: array items: $ref: '#/components/schemas/Unbond' wallet_address: $ref: '#/components/schemas/EthereumAddress' DeactivateIntentSolana: type: object description: Result of the new Deactivate Intent request. required: - total_deactivated_amount - deactivates - splits properties: deactivates: type: array items: $ref: '#/components/schemas/DeactivateStakeSolana' splits: type: array items: $ref: '#/components/schemas/SplitStakeSolana' total_deactivated_amount: $ref: '#/components/schemas/Lamport' Wei: type: string description: Denomination of the cryptocurrency Polygon. pattern: ^[1-9]\d+$ example: '100' CosmosStakeIntentResponse: allOf: - $ref: '#/components/schemas/CommonStakeIntentResponse' - type: object required: - protocol - network properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' cosmos: $ref: '#/components/schemas/StakeIntentCosmos' NearProtocol: type: string description: Near protocol enum: - near RestakeIntentId: type: string format: uuid description: Unique idenifier for a restake intent. example: 4ba06e89-8c29-483e-ac36-318de5aa7364 UnsignedTransaction: type: string format: base64 description: Generated unsigned transaction smart contract call data. example: '0x22895118000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120087fed394b43849eebef1e88873cd9efdbe33136656e5148e659b8b2f33625d40000000000000000000000000000000000000000000000000000000000000030b81748644e23c4d950f9dd709f3eb73d5eacd9657997e1d9dde7c4ebd8a6519ecb9d0a7fb603d3b68e023278f9650122000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020010000000000000000000000c509bb854c526af4cee5e037089f7aa8e091d8870000000000000000000000000000000000000000000000000000000000000060b36b79b4b206c0310472c117fa40c05342b5dc3e89f98f42c9da3ce6450d4c603cad55248017fd4eca3ab277cca64569193e4d487f5b2ea78a2bcdc81926c313c05842a3af318967a775783bba22519e8b8886587efa99aa7dab5784f792b187 ' BinanceDeactivationIntentResponse: allOf: - $ref: '#/components/schemas/CommonDeactivationResponse' - type: object description: Response to a new deactivation intent request. required: - protocol - network - binance properties: protocol: $ref: '#/components/schemas/BinanceProtocol' network: $ref: '#/components/schemas/BinanceNetwork' binance: $ref: '#/components/schemas/DeactivateIntentBinance' CardanoBaseAddress: type: string description: bech32 encoded base address. [Accounts](https://cips.cardano.org/cips/cip19/). format: bech32 example: addr1vpu5vlrf4xkxv2qpwngf6cjhtw542ayty80v8dyr49rf5eg0yu80w CosmosDeactivationIntentResponse: allOf: - $ref: '#/components/schemas/CommonDeactivationResponse' - type: object description: Response to a new deactivation intent request. required: - protocol - network - cosmos properties: protocol: $ref: '#/components/schemas/CosmosProtocol' network: $ref: '#/components/schemas/CosmosNetwork' cosmos: $ref: '#/components/schemas/DeactivateIntentCosmos' UnauthorizedError: type: object description: Error response envelope required: - code - message properties: code: type: integer format: int32 description: Error code example: 401 message: type: string description: Error Message example: A human-readable diagnostic message detailing any authorization failure DeactivationIntentsSolana: description: List of deactivation intents type: array items: $ref: '#/components/schemas/SolanaDeactivationIntentResponse' CosmosUatom: type: string description: Denomination of the cryptocurrency Cosmos. pattern: ^[1-9]\d+$ example: '100' DeactivationIntentsCardano: type: array description: List of deactivation intents items: type: object description: Cardano Protocol Deactivate Intent required: - deactivate_intent_id - base_address - unsigned_transaction properties: deactivate_intent_id: $ref: '#/components/schemas/DeactivateIntentId' base_address: $ref: '#/components/schemas/CardanoBaseAddress' unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' RestakeIntentsCosmos: type: array description: List of restake intents items: $ref: '#/components/schemas/CosmosRestakeIntentResponse' CosmosAccountAddress: type: string description: Public Key of an asymmetric key-pair. format: bech32 pattern: ^cosmos[1-9a-zA-Z]{39}$ example: cosmos1wvvhhfm387xvfnqshmdaunnpujjrdxznr5d5x9 DeactivateStakeSolana: type: object description: Result of the deactivation transaction request required: - unsigned_transaction - stake_account_authority - stake_account_address - withdrawal_authority - stake_id - amount - expiration_time properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' stake_account_authority: $ref: '#/components/schemas/SolanaPublicKey' stake_account_address: $ref: '#/components/schemas/SolanaPublicKey' withdrawal_authority: $ref: '#/components/schemas/SolanaPublicKey' stake_id: $ref: '#/components/schemas/StakeId' amount: $ref: '#/components/schemas/Lamport' expiration_time: $ref: '#/components/schemas/ExpirationTime' DeactivationIntentsBinance: type: array description: List of deactivation intents items: $ref: '#/components/schemas/BinanceDeactivationIntentResponse' NearYocto: type: string description: Denomination of NEAR Protocol. pattern: ^[1-9]\d+$ example: '100000000000000000000000000' RestakeIntentBinance: type: object description: Binance Restake Intent required: - unsigned_transaction - delegator_address - old_validator_address - new_validator_address - amount properties: unsigned_transaction: $ref: '#/components/schemas/UnsignedTransaction' delegator_address: $ref: '#/components/schemas/BinanceAccountAddress' old_validator_address: $ref: '#/components/schemas/BinanceValidatorAddress' new_validator_address: $ref: '#/components/schemas/BinanceValidatorAddress' amount: $ref: '#/components/schemas/BinanceJager' BinanceValidatorAddress: type: string description: Binance beacon chain validator address. format: bech32 pattern: ^bva[0-9a-zA-Z]*$ example: bva1mrpf5n5e5knn3z9qng5pnex3m9pvyhg6434j0t NewStakeIntentCosmos: type: object description: Individual cosmos stake required: - amount - delegator_address properties: amount: $ref: '#/components/schemas/CosmosUatom' delegator_address: $ref: '#/components/schemas/CosmosAccountAddress' public_key: $ref: '#/components/schemas/CosmosPublicKey' plan_id: $ref: '#/components/schemas/PlanId' SolanaPublicKey: type: string description: Public Key of an asymmetric key-pair. format: base58 pattern: ^[1-9A-HJ-NP-Za-km-z]{44}$ example: 5xot9PVkphiX2adznghwrAuxGs2zeWisNSxMW6hU6Hkj Nonce: type: integer description: Number for one use only example: 1 StakeId: description: Unique stake identifier. type: string format: base58 example: stake_Wgx98Rbi8nQuL9ddn3mTk1 NearDeactivationIntentResponse: allOf: - $ref: '#/components/schemas/CommonDeactivationResponse' - type: object description: Response to a new deactivation intent request. required: - protocol - network - near properties: protocol: $ref: '#/components/schemas/NearProtocol' network: $ref: '#/components/schemas/NearNetwork' near: $ref: '#/components/schemas/DeactivateIntentNear' BinanceJager: type: string description: The smallest denomination of Binance Coin (BNB) is called Jager. 1 Jager =0.00000001 BNB. pattern: ^[1-9]\d+$ example: '10000000000' responses: Unauthorized: description: Header 'X-API-Key' missing. content: application/json: schema: $ref: '#/components/schemas/UnauthorizedError' InternalServerError: description: Internal server error. content: application/json: schema: $ref: '#/components/schemas/Error' NoValidatorsError: description: Insufficient validators available to process Stake Intent request content: application/json: schema: $ref: '#/components/schemas/Error' RewardsWithdrawIntentCosmos: description: Rewards withdrawal intent created content: application/json: schema: $ref: '#/components/schemas/RewardsWithdrawIntentCosmos' InvalidRequest: description: Invalid request. content: application/json: schema: type: object description: Error response envelope required: - code - message properties: code: type: integer format: int32 description: Error code example: 400 message: type: string description: Error Message example: Detailed human-readable diagnostic message regarding any invalid request parameters RestakeIntent: description: Restake intent created content: application/json: schema: $ref: '#/components/schemas/RestakeIntent' securitySchemes: ApiKeyAuth: description: 'When signing up for a staking account, you are provided with an API key. To authenticate a Staking API request, pass your API key in the `X-API-Key` header.' type: apiKey in: header name: X-API-KEY x-provenance: method: searched source: https://docs.blockdaemon.com/reference harvested: '2026-10-14' tool: harvest-readme-openapi.py note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored. assembled_from: - https://docs.blockdaemon.com/reference/activeexitingqueueprogress.md - https://docs.blockdaemon.com/reference/cancelneardeactivationintent.md - https://docs.blockdaemon.com/reference/cancelpolygondeactivationintent.md - https://docs.blockdaemon.com/reference/cancelsolanadeactivationintent.md - https://docs.blockdaemon.com/reference/cancelsolanawithdrawalintent.md - https://docs.blockdaemon.com/reference/exitethereumvalidator.md - https://docs.blockdaemon.com/reference/exitethereumvalidators.md - https://docs.blockdaemon.com/reference/generateethereumlaunchpaddeposit.md - https://docs.blockdaemon.com/reference/generatesignedvoluntaryexit.md - https://docs.blockdaemon.com/reference/getbinancedeactivatableamount.md - https://docs.blockdaemon.com/reference/getbinancedeactivationintents.md - https://docs.blockdaemon.com/reference/getbinancerestakeintents.md - https://docs.blockdaemon.com/reference/getcardanodeactivationintents.md - https://docs.blockdaemon.com/reference/getcardanorewardswithdrawalintents.md - https://docs.blockdaemon.com/reference/getcosmosdeactivatableamount.md - https://docs.blockdaemon.com/reference/getcosmosdeactivationintents.md - https://docs.blockdaemon.com/reference/getcosmosrestakeintents.md - https://docs.blockdaemon.com/reference/getcosmoswithdrawablerewardsamount.md - https://docs.blockdaemon.com/reference/getethwithdrawableamount.md - https://docs.blockdaemon.com/reference/getneardeactivatableamount.md - https://docs.blockdaemon.com/reference/getneardeactivationintents.md - https://docs.blockdaemon.com/reference/getnearwithdrawableamount.md - https://docs.blockdaemon.com/reference/getnearwithdrawalintents.md - https://docs.blockdaemon.com/reference/getpolygondeactivationintents.md - https://docs.blockdaemon.com/reference/getsolanadeactivatableamount.md - https://docs.blockdaemon.com/reference/getsolanadeactivationintents.md - https://docs.blockdaemon.com/reference/getsolanawithdrawableamount.md - https://docs.blockdaemon.com/reference/getsolanawithdrawalintents.md - https://docs.blockdaemon.com/reference/getstakeaccountssolana.md - https://docs.blockdaemon.com/reference/listcustomerplans.md - https://docs.blockdaemon.com/reference/listethereumexits.md - https://docs.blockdaemon.com/reference/liststakeintents.md - https://docs.blockdaemon.com/reference/pendingqueuedprogress.md - https://docs.blockdaemon.com/reference/postavaxstakeintent.md - https://docs.blockdaemon.com/reference/postbinancedeactivationintent.md - https://docs.blockdaemon.com/reference/postbinancerestakeintent.md - https://docs.blockdaemon.com/reference/postbinancestakeintent.md - https://docs.blockdaemon.com/reference/postcardanodeactivationintent.md - https://docs.blockdaemon.com/reference/postcardanorewardswithdrawalintent.md - https://docs.blockdaemon.com/reference/postcardanostakeintent.md - https://docs.blockdaemon.com/reference/postcosmosdeactivationintent.md - https://docs.blockdaemon.com/reference/postcosmosrestakeintent.md - https://docs.blockdaemon.com/reference/postcosmosrewardswithdrawalintent.md - https://docs.blockdaemon.com/reference/postcosmosstakeintent.md - https://docs.blockdaemon.com/reference/postethereumcompoundingintent.md - https://docs.blockdaemon.com/reference/postethereumstakeintent.md - https://docs.blockdaemon.com/reference/postethereumtopupintent.md - https://docs.blockdaemon.com/reference/postethereumwithdrawalintentexit.md - https://docs.blockdaemon.com/reference/postethereumwithdrawalintentpartial.md - https://docs.blockdaemon.com/reference/postneardeactivationintent.md - https://docs.blockdaemon.com/reference/postnearstakeintent.md - https://docs.blockdaemon.com/reference/postnearwithdrawalintent.md - https://docs.blockdaemon.com/reference/postpolygonbootstrappingintent.md - https://docs.blockdaemon.com/reference/postpolygondeactivationintent.md - https://docs.blockdaemon.com/reference/postpolygonrewardsrestakeintent.md - https://docs.blockdaemon.com/reference/postpolygonrewardswithdrawalintent.md - https://docs.blockdaemon.com/reference/postpolygonstakeintent.md - https://docs.blockdaemon.com/reference/postpolygonwithdrawalintent.md - https://docs.blockdaemon.com/reference/postsolanadeactivationintent.md - https://docs.blockdaemon.com/reference/postsolanastakeintent.md - https://docs.blockdaemon.com/reference/postsolanawithdrawalintent.md - https://docs.blockdaemon.com/reference/submittransaction.md merge: pages: 62 deduped: 1027 conflicts_kept_first: 0