For the complete documentation index, see llms.txt. This page is also available as Markdown.

Approve Token

Approve token spending (EVM and Tron only)

post
Authorizations
X-StampstringRequired

Base64URL-encoded JSON: { "publicKey": "<hex ed25519 pubkey>", "signature": "<hex ed25519 sig>" }. The signature covers JSON.stringify([binding, Object.entries(params)]), where binding is "<METHOD> <routePath>" (the server's route pattern, e.g. "POST /waas/create-wallet") and params is the request body (POST) or query params (GET). This binds the stamp to its own route so it cannot be replayed against a different endpoint. The one parameterized route, GET /waas/scheduled-transaction/{scheduleId}, binds to the literal "GET /waas/scheduled-transaction/:scheduleId", not the concrete ID. See the Signing Requests guide for runnable examples.

Body
organizationIdstringRequired
userIdstringRequired
fromAddressstringRequired
chainIdstringRequired
tokenstringRequired

Token contract address

spenderstringRequired

Address being approved

amountstringRequired

Approval amount

noncestringRequired
Responses
200

Transaction submitted

application/json
post/waas/wallet/contract/approve
POST /waas/wallet/contract/approve HTTP/1.1
Host: api.hinkal.io
X-Stamp: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 142

{
  "organizationId": "text",
  "userId": "text",
  "fromAddress": "text",
  "chainId": "text",
  "token": "text",
  "spender": "text",
  "amount": "text",
  "nonce": "text"
}
{
  "status": "success",
  "data": {
    "txHash": "0xabc123..."
  }
}

Last updated