fungibletoken

Approve

This endpoint is used to grant permission for a designated spender to withdraw tokens from a user's ERC-20 token balance. By invoking the standard ERC-20 approve function, it sets an allowance that enables the spender to access up to a specified number of tokens on behalf of the user.

💡 Compute Unit Value: 80 (Fixed)

post/defi/v1/fungibletoken/approve

Request

  • Base URL
    https://svc.blockdaemon.com
  • URL
    https://svc.blockdaemon.com/defi/v1/fungibletoken/approve
  • Auth
    API key in header X-API-Key

Request body

fromstring required

Blockchain address of the sender. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). This address must hold sufficient balance and will sign the transaction.

tokenAddressstring required

Address of the token.

amountstring required

Number of tokens, specified in the token's smallest denomination (base units). Do not send human-readable decimal values. Examples: 1 WETH (18 decimals) = "1000000000000000000"; 1 USDC (6 decimals) = "1000000".

tostring required

Blockchain address of the recipient. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...).

gasstring

Maximum number of gas units to allocate for the transaction, as an integer string (e.g., '200000'). If omitted, gas is estimated automatically. Note: this is gas units, not wei or gwei.

chainId'1' | '56' | '43114' | '137' | '900' | '901' | '250' | '10' | '11155420' | '42161' | '421614' | '25' | '338' | '84532' | '8453' | '43113' | '97' | '80002' | '300' | '324' | '5000' | '5003'

The unique ID to direct queries or transactions to the correct blockchain. Find more here.

chainSymbolstring

The abbreviated chain name for queries or transactions.

gasPrioritystring

Specifies the priority level for gas fees (e.g., 'low', 'medium', or 'high'), which influences the transaction speed and cost. Defaults to 'medium'.

enableFeeboolean

Flag to include a basis points fee transaction alongside the main transaction when set to true.

simulateboolean

When true, dry-runs the transaction batch via eth_simulateV1 and returns a simulate field with status and error on each transaction.

Example request

{
  "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
  "tokenAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
  "amount": "1000000000000000000",
  "to": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
  "gas": "100000",
  "chainId": "1",
  "chainSymbol": "ETH",
  "gasPriority": "low",
  "enableFee": false,
  "simulate": false
}

Response

Successful response

statusnumber
msgstring

Example response

{
  "status": 200,
  "msg": "success",
  "data": {
    "chainId": "1",
    "from": "0x63056E00436Da25BcF48A40dfBbDcc7089351006",
    "to": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
    "value": "0",
    "gas": "100000",
    "data": "0x095ea7b3000000000000000000000000828b154032950c8ff7cf8085d841723db269605600000000000000000000000000000000000000000000003635c9adc5dea00000",
    "referenceId": "ab50faa439b64b66beae1a894e1f0a0a"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.