Account Abstraction
API Reference
User Operation
Estimate User Operation
Transfer Native Coin

Estimate Transfer Coin Cost

Overview

This API endpoint allows you to estimate the cost of transferring native coins from an account.

  • HTTP Method: POST
  • Endpoint: {{BASE_URL}}/api/v1/userOp/sendCoin/estimate

Request Body Parameters

  • accountId (required): The unique identifier of the account.
  • to (required): The recipient's wallet address.
  • amount (required): The amount of coins to transfer (in smallest unit).

Example Request Body

{
  "accountId": "67959f7927373a6808679de2",
  "to": "0x....",
  "amount": "1000000000000"
}

Request

Request Headers

  • X-CLIENT-ID: (required): Client ID which was generated when registering in Xellar Account Abstraction API Service Dashboard.
  • X-SIGNATURE: (required): Calculated signature, please refer to Authorization section.
  • X-TIMESTAMP: (required): Request timestamp in RFC3339 format.

Example Request Syntax

curl -X POST -H "Content-Type: application/json" \
-H "x-client-id: $YOUR_CLIENT_ID" \
-H "x-signature: $CALCULATED_SIGNATURE" \
-H "x-timestamp: $TIMESTAMP" \
-d '{
    "accountId": "67959f7927373a6808679de2",
    "to": "0x....",
    "amount": "1000000000000"
}' {{BASE_URL}}/api/v1/userOp/sendCoin/estimate

Response

The response will include a JSON object with the following properties:

  • status (number): The HTTP status code of the response (e.g., 200 for success).
  • message (string): A message providing additional information about the operation.
  • data (object): An object containing the cost estimation details.
  • data.requiredETH (string): The estimated amount of ETH required.
  • data.requiredGasTankBalance (string): The estimated gas tank balance required.
  • data.decimal (number): The number of decimals used in the estimation.

Example Response

{
  "status": 200,
  "message": "success",
  "data": {
    "requiredETH": "8621402752060272",
    "requiredGasTankBalance": "31499329522982450044",
    "decimal": 18
  }
}