Getting Started

The single nominator pool is an alternative type of the TON smart contract designed for validators that have enough self stake to validate by themselves without relying on third-party nominators stakes.

To start using the Staking API and nominate individually with a validator on the TON network:

  1. Create a stake transaction.
  2. Sign and broadcast it to the network.

Get an authentication token to start using Staking API.

Request examples are provided using cURL.


To create a stake transaction:

  1. Send a POST request to /api/v1/ton/{network}/staking/single-nominator/stake.

    Example request (for testnet network):

    curl --request POST \
         --url https://api.p2p.org/api/v1/ton/testnet/staking/single-nominator/stake \
         --header 'accept: application/json' \\
     		 --header 'authorization: Bearer <token>' \\
     		 --header 'content-type: application/json' \\
     		 --data '
    {
      "publicKey": "7031f1dcbe0f670daf4094d04ff9a7947bc4ac9174a7d470255d1a664e20b7c6",
      "amount": 1000000000,
      "walletVersion": "V4"
    
    }'
    
    • publicKey — public key of the nominator for the TON network.

    • amount — amount of tokens to stake in nanoTONs (1 TON = 10⁹ nanoTONs). Note that the minimum staking amount is not limited, but there is a maximum cap of 2 000 000 TON for each pool.

    • walletVersionversion of the smart contract used by the wallet in the TON blockchain:

      • V3R1 and V3R2 — wallet V3.
      • V4 — wallet V4; used by default.
      • V5R1 — wallet V5.
        Example response:
    {
      "error": null,
      "result": {
        "unsignedTransaction": "b5ee9c7241010101003800006b000010000000000000000001000000039fedeab7a2b56b38f19f60b5b9f70b2f1ba2d89b9c5a756036c7cfad73571fb281887735940193456f7e",
        "seqno": 18,
        "walletVersion": "V4",
        "stakerAddress": "0QDZncytCDTPJylG1POFhqzeCLDFZNKhJ2v73lcsBNjQHMZx",
        "publicKey": "7031f1dcbe0f670daf4094d04ff9a7947bc4ac9174a7d470255d1a664e20b7c6",
        "nominatorPoolAddress": "Ef8IC-yGBErI-saZ4a59OhBu1QyB",
        "amount": 1
      }
    }
    
    • unsignedTransactionunsigned transaction in the hexadecimal format. Sign the transaction and submit it to the blockchain to create a staking request.

    • seqno — sequence number of the masterchain block.

    • walletVersionversion of the smart contract used by the wallet in the TON blockchain.

    • stakerAddress — main account address of the bounceable type which keeps tokens.

    • publicKey — public key of the nominator for the TON network.

    • nominatorPoolAddress — Single Nominator Pool address.

    • amount — amount of tokens to stake in TON.

  2. Sign and broadcast the unsignedTransaction to the TON network.

What's Next?