> ## Documentation Index
> Fetch the complete documentation index at: https://docs.p2p.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Staking Request

> Create the staking request transaction in the single nominator pool.



## OpenAPI

````yaml POST /api/v1/ton/{network}/staking/single-nominator/stake
openapi: 3.0.0
info:
  title: Staking API
  description: API used for staking
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.p2p.org/api
security:
  - bearer: []
tags:
  - name: Aptos
    description: Aptos staking operations (stake, unstake, withdraw, claim).
  - name: Celestia
    description: Celestia staking operations (stake, unstake, redelegate, claim).
  - name: Cosmos
    description: Cosmos Hub staking operations (stake, unstake, redelegate, claim).
  - name: EigenLayer
    description: EigenLayer restaking operations.
  - name: Ethereum
    description: Ethereum staking operations (direct, SSV, pooled).
  - name: Hyperliquid
    description: Hyperliquid staking operations.
  - name: Monad
    description: Monad staking operations (delegate, undelegate, withdraw).
  - name: P2P SSV
    description: P2P-managed SSV validator operations (deposit, claim, withdraw).
  - name: Polkadot
    description: Polkadot staking and nomination pool operations.
  - name: Polygon
    description: Polygon staking operations.
  - name: Pooled Staking
    description: Pooled staking vault operations (deposit, unstake, withdraw).
  - name: Sei
    description: Sei staking operations (stake, unstake, redelegate, claim).
  - name: Solana
    description: Solana staking operations (stake, split, merge, deactivate, withdraw).
  - name: SSV
    description: SSV network validator operations.
  - name: Story
    description: Story network staking operations.
  - name: Sui
    description: Sui staking operations.
  - name: TON
    description: TON staking operations (single nominator, whales pool).
  - name: TRON
    description: TRON staking operations (freeze, delegate, vote, withdraw).
  - name: Unified
    description: Unified multi-chain staking interface.
paths:
  /api/v1/ton/{network}/staking/single-nominator/stake:
    post:
      tags:
        - TON
      summary: Create Staking Request
      description: Create the staking request transaction in the single nominator pool.
      operationId: ton-staking-single-nominator-stake
      parameters:
        - name: network
          required: true
          in: path
          description: >-
            <p>TON network:</p><ul><li>`mainnet` — production
            network.</li><li>`testnet` — testnet.</li></ul>
          schema:
            enum:
              - mainnet
              - testnet
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TonSingleNominatorStakeRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/SuccessResponse'
                  - type: object
                    properties:
                      result:
                        $ref: '#/components/schemas/TonSingleNominatorStakeResponse'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
        - bearer: []
components:
  schemas:
    TonSingleNominatorStakeRequest:
      type: object
      properties:
        publicKey:
          type: string
          description: Public key of the nominator for the TON network.
          example: 7031f1dcbe0f670daf4094d04ff9a7947bc4ac9174a7d470255d1a664e20b7c6
        amount:
          format: int64
          type: integer
          description: >-
            Amount of tokens to stake in nanoGRAMs (1 GRAM = 10⁹ nanoGRAMs,
            prev. nanoTONs).
          example: 20000000000
        walletVersion:
          type: string
          description: >-
            Version of the smart contract used by the wallet in the TON
            blockchain.
          example: V4
          default: V4
          enum:
            - V3R1
            - V3R2
            - V4
            - V5R1
      required:
        - publicKey
        - amount
    SuccessResponse:
      type: object
      properties:
        error:
          type: object
          nullable: true
          default: null
          description: Error object. Always null on successful responses.
        result:
          type: object
          description: Response payload containing the requested data.
      description: Standard API success response envelope wrapping the result payload.
      required:
        - error
        - result
    TonSingleNominatorStakeResponse:
      type: object
      properties:
        unsignedTransaction:
          type: string
          description: >-
            Unsigned transaction for the staking request in the hexadecimal
            format.
          example: >-
            b5ee9c7241010101003000005c00000000000000039fedeab7a2b56b38f19f60b5b9f70b2f1ba2d89b9c5a756036c7cfad73571fb28188ee6b2800b10cbe42
        walletVersion:
          type: string
          description: >-
            Version of the smart contract used by the wallet in the TON
            blockchain.
          example: V4
          enum:
            - V3R1
            - V3R2
            - V4
            - V5R1
        stakerAddress:
          type: string
          description: Main account address of the bounceable type which keeps tokens.
          example: 7031f1dcbe0f670daf4094d04ff9a7947bc4ac9174a7d470255d1a664e20b7c6
        publicKey:
          type: string
          description: Public key of the nominator for the TON network.
          example: 7031f1dcbe0f670daf4094d04ff9a7947bc4ac9174a7d470255d1a664e20b7c6
        amount:
          type: number
          description: Amount of tokens to stake in GRAM (prev. Toncoin).
          example: 2
          format: double
      required:
        - unsignedTransaction
        - walletVersion
        - stakerAddress
        - publicKey
        - amount
  responses:
    TooManyRequests:
      description: >-
        Too Many Requests — the client exceeded its rate limit. The response
        advertises when to retry and the active quota via headers.
      headers:
        Retry-After:
          description: Number of seconds to wait before retrying the request.
          schema:
            type: integer
            example: 60
        RateLimit-Limit:
          description: >-
            The request quota (maximum number of requests) for the most
            restrictive applicable window.
          schema:
            type: integer
            example: 120
        RateLimit-Reset:
          description: >-
            Number of seconds until the rate-limit window resets and requests
            are accepted again.
          schema:
            type: integer
            example: 60
        RateLimit-Policy:
          description: >-
            The active rate-limit policy as `<limit>;w=<window-seconds>`,
            comma-separated when multiple windows apply.
          schema:
            type: string
            example: 120;w=60
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: integer
                  name:
                    type: string
                    example: ThrottlerException
                  message:
                    type: string
                    example: ThrottlerException
                  errors:
                    type: array
                    nullable: true
                    items:
                      type: object
              result:
                type: object
                nullable: true
                example: null
              requestId:
                type: string
                description: >-
                  Identifier of the request (the `x-request-id` header). Quote
                  this value to correlate the response with server logs.
                example: 90c16e9e-6e99-4651-a033-60290356df2f
              timestamp:
                type: string
                format: date-time
                description: ISO 8601 timestamp of when the error response was generated.
                example: '2026-05-20T22:29:03.126Z'
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Create Staking Request](/reference/solana-staking-stake.md)
