---
updatedAt: 2026-05-20T06:31:42.000Z
---

Fetch the complete documentation index at: https://docs.blockdaemon.com/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Post Stake Intent

Returns an unsigned transaction that can be used to delegate your tokens to a Blockdaemon validator.

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "version": "1.0.0",
    "title": "Staking 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.\n\nWith 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"
    }
  },
  "x-readme": {
    "explorer-enabled": false
  },
  "servers": [
    {
      "url": "https://svc.blockdaemon.com/boss"
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "description": "When signing up for a staking account, you are provided with an API key.\n\nTo authenticate a Staking API request, pass your API key in the `X-API-Key` header.",
        "type": "apiKey",
        "in": "header",
        "name": "X-API-KEY"
      }
    },
    "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
      },
      "NearNetwork": {
        "name": "network",
        "in": "path",
        "description": "NEAR network",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/NearNetwork"
        }
      }
    },
    "responses": {
      "InternalServerError": {
        "description": "Internal server error.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "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"
                }
              }
            }
          }
        }
      },
      "NoValidatorsError": {
        "description": "Insufficient validators available to process Stake Intent request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "Unauthorized": {
        "description": "Header 'X-API-Key' missing.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/UnauthorizedError"
            }
          }
        }
      }
    },
    "schemas": {
      "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"
          }
        }
      },
      "CustomerId": {
        "type": "string",
        "description": "Unique identifier for a customer",
        "example": "SatoshiNakamoto-xUYJbPw9hw",
        "minimum": 1
      },
      "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"
          }
        }
      },
      "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"
      },
      "StakeIntentId": {
        "type": "string",
        "format": "base58",
        "description": "Unique idenifier for a group of stakes.",
        "example": "stake_intent_Wgx98Rbi8nQuL9ddn3mTk1"
      },
      "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"
          }
        }
      },
      "UnsignedTransaction": {
        "type": "string",
        "format": "base64",
        "description": "Generated unsigned transaction smart contract call data.",
        "example": "0x22895118000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120087fed394b43849eebef1e88873cd9efdbe33136656e5148e659b8b2f33625d40000000000000000000000000000000000000000000000000000000000000030b81748644e23c4d950f9dd709f3eb73d5eacd9657997e1d9dde7c4ebd8a6519ecb9d0a7fb603d3b68e023278f9650122000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020010000000000000000000000c509bb854c526af4cee5e037089f7aa8e091d8870000000000000000000000000000000000000000000000000000000000000060b36b79b4b206c0310472c117fa40c05342b5dc3e89f98f42c9da3ce6450d4c603cad55248017fd4eca3ab277cca64569193e4d487f5b2ea78a2bcdc81926c313c05842a3af318967a775783bba22519e8b8886587efa99aa7dab5784f792b187\n"
      },
      "UnsignedTransactionHash": {
        "type": "string",
        "format": "base64",
        "description": "A generated transaction that is ready to sign.",
        "example": "120000007465737477616c6c65742e746573746e65740025150c44ecddfe779c2ca "
      },
      "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"
      },
      "NearNetwork": {
        "type": "string",
        "description": "NEAR network",
        "enum": [
          "mainnet",
          "testnet",
          "localnet"
        ]
      },
      "NearYocto": {
        "type": "string",
        "description": "Denomination of NEAR Protocol.",
        "pattern": "^[1-9]\\d+$",
        "example": "100000000000000000000000000"
      },
      "NewStakeIntentNear": {
        "type": "object",
        "description": "Request object to create a new Stake Intent for NEAR Protocol",
        "required": [
          "amount",
          "wallet_address",
          "public_key"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/NearYocto",
            "description": "Amount of yoctoNEAR to stake. 1 NEAR = 1e24 yoctoNEAR."
          },
          "wallet_address": {
            "$ref": "#/components/schemas/NearAddress",
            "description": "Account to stake from (can be either [named account or implicit account](https://docs.near.org/concepts/basics/accounts/account-id/))"
          },
          "public_key": {
            "$ref": "#/components/schemas/NearPublicKey",
            "description": "Must be the public key of the private key that will be used to sign the returned transaction. The public key must also be added as [FullAccess](https://docs.near.org/concepts/basics/accounts/access-keys#full-access-keys) key to the `wallet_address` account."
          },
          "to": {
            "$ref": "#/components/schemas/NearAddress",
            "description": "Specifies validator to delegate to."
          },
          "plan_id": {
            "$ref": "#/components/schemas/PlanId"
          }
        }
      },
      "StakeIntentNear": {
        "type": "object",
        "description": "NEAR Protocol Stake 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",
            "example": "120000007465737477616c6c65742e746573746e65740025150c44ecddfe779c2ca624cae002ef5bf6efbb9167fe3920d6595163574dc585ca49a33e2f0000170000006e6f64656173792e706f6f6c2e663836333937332e6d308e9076d7ec46d5c1d876bb5461c4a31469d50825695a1a23ee873ed532cadb2f0100000002110000006465706f7369745f616e645f7374616b65020000007b7d00c06e31d9100100000000e4d20cc8dcd2b7520000000000"
          },
          "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"
          }
        }
      },
      "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}$"
      },
      "NearProtocol": {
        "type": "string",
        "description": "Near protocol",
        "enum": [
          "near"
        ]
      },
      "NearStakeIntentResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CommonStakeIntentResponse"
          },
          {
            "type": "object",
            "required": [
              "protocol",
              "network"
            ],
            "properties": {
              "protocol": {
                "$ref": "#/components/schemas/NearProtocol"
              },
              "network": {
                "$ref": "#/components/schemas/NearNetwork"
              },
              "near": {
                "$ref": "#/components/schemas/StakeIntentNear"
              }
            }
          }
        ]
      },
      "ExpirationTime": {
        "type": "integer",
        "description": "Transaction expiration time",
        "format": "int64",
        "example": 1689939023
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "paths": {
    "/v1/near/{network}/stake-intents": {
      "parameters": [
        {
          "$ref": "#/components/parameters/NearNetwork"
        },
        {
          "$ref": "#/components/parameters/IdempotencyKey"
        }
      ],
      "post": {
        "summary": "Post Stake Intent",
        "operationId": "postNearStakeIntent",
        "tags": [
          "NEAR"
        ],
        "description": "Returns an unsigned transaction that can be used to delegate your tokens to a Blockdaemon validator.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewStakeIntentNear"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NearStakeIntentResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/InvalidRequest"
          },
          "401": {
            "$ref": "#/components/responses/Unauthorized"
          },
          "500": {
            "$ref": "#/components/responses/InternalServerError"
          },
          "503": {
            "$ref": "#/components/responses/NoValidatorsError"
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          }
        ]
      }
    }
  },
  "tags": [
    {
      "name": "NEAR",
      "description": "Near endpoints"
    }
  ]
}
```