Skip to content

Token API

Token API offers the transfer, querying, and delegation of the FT (Fungible Token).

Get token information

Returns the token contract information of a contract address (contract).

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}
HTTP Method GET
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the address of the token contract string Y

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.name the token name string
data.symbol the symbol of the token string
data.decimals the maximum decimal places of the token number
data.totalSupply the total amount of supply string

Request sample

curl -X 'GET' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x94853BdC9c6AdD50D7842D1A3117fab385457470' 
  -H 'accept: application/json' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "name": "Simple Token",
    "symbol": "ST",
    "decimals": 18,
    "totalSupply": "1000000000"
  }
}

Get Token balance

Returns the current token balance of the token owner account (from).

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}/account/{from}/balance
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}/account/{from}/balance
HTTP Method GET
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the address of the token contract string Y
from the token owner string Y

Query parameters

Field Name Description Type Required
details whether to return the balance details boolean N

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.value the token balance string
data.rawValue the token balance not applying data.decimals string
data.symbol the symbol of the token string
data.decimals the maximum decimal places of the token number

Request sample

curl -X 'GET' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x94853BdC9c6AdD50D7842D1A3117fab385457470/account/0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765/balance?details=true' 
  -H 'accept: application/json' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "value": "999998999",
    "symbol": "ST",
    "decimals": 18,
    "rawValue": "999998999000000000000000000"
  }
}

Get token amount available for spproved transfer

Returns the amount of tokens that the token owner account from has approved the spender account to send on behalf of the owner.

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}/account/{from}/allowance/{spender}
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}/account/{from}/allowance/{spender}
HTTP Method GET
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the address of the token contract string Y
from the token owner string Y
spender the account that is granted to send tokens string Y

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.allowance the amount of tokens can be sent string

Request sample

curl -X 'GET' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x94853BdC9c6AdD50D7842D1A3117fab385457470/account/0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765/allowance/0xFBd488D1b00604d3b05124d80E35FeA9A39C3296' 
  -H 'accept: application/json' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "allowance": "0"
  }
}

Send token

Creates a transaction that sends tokens to a specific address. from must be the token owner. If the receiver account (to) is a contract, this contract can do additional tasks with data.

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}/transfer
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}/transfer
HTTP Method POST
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the address of the token contract string Y

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Request body

Field Name Description Type Required
encoded whether the returned transaction is encoded or not true: Receive the encoded raw transaction string (data.rawTx). false: Receive the decoded data.rawTx (JSON). boolean N
from the account address that sends the token string Y
to the account address that receives the token string Y
amount the amount of tokens to be sent string Y

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.rawTx the transaction data string or json
data.hashedTx This is hashed data.rawTx. This value is only returned when the API header x-network is "polygon" and the Request Body from is an multi sig wallet address. string
data.requestId the unique value that can identify each API request string

Request sample

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x94853BdC9c6AdD50D7842D1A3117fab385457470/transfer' 
  -H 'accept: */*' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...' 
  -H 'Content-Type: application/json' 
  -d '{
  "encoded": true,
  "from": "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765",
  "to": "0xFBd488D1b00604d3b05124d80E35FeA9A39C3296",
  "amount": "100.55"
}'

Response sample

// Polygon
{
  "code": 0,
  "message": "success",
  "data": {
    "rawTx": "02f8738301388181c2846fc23ac0846fc23ad882cdc49494853bdc9c6add50d7842d1a3117fab38545747080b8...",
    "hashedTx": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076...",
    "requestId": "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
  }
}
// XPLA
{
  "code": 0,
  "message": "success",
  "data": {   
   "rawTx": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076.....",
    "reqeustId": "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
  }
}

Send token on behalf of owner

Creates a transaction that sends tokens to a specific address on behalf of the token owner. from must be the account that is delegated with the right to send tokens from the token owner (owner). If the receiver account (to) is a contract, this contract can do additional tasks with data.

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}/transfer-from
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}/transfer-from
HTTP Method POST
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the contract address string Y

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Request body

Field Name Description Type Required
from the wallet address of the account that is granted to send tokens string Y
to the wallet address that receives the token string Y
amount the amount of tokens to be sent string Y
data the data that will be sent if the receiver is a contract string Y
owner the wallet address of the token owner account string Y
encoded whether the returned transaction is encoded or not true: Receive the encoded raw transaction string (data.rawTx). false: Receive the decoded data.rawTx (JSON). boolean N

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.rawTx the transaction data string or json
data.hashedTx This is hashed data.rawTx. This value is only returned when the API header x-network is "polygon" and the Request Body from is an multi sig wallet address. string
data.requestId the unique value that can identify each API request string

Request sample

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x5bd415aeb2b382c7fac9cc72c1f3994e33ff7b02/transfer-from' 
  -H 'accept: */*' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...' 
  -H 'Content-Type: application/json' 
  -d '{
  "encoded": true,
  "from": "0xA10078576Ca6f63dc6f78ff9a8ed8bd05B51f463",
  "to": "0xdcd51770d06B54204abd8c30A25b4583D4cABa39",
  "amount": "0.000001",
  "owner": "0xD6e69da7f1be111394dfef4C48eaC9b52ddf2Fd0"
}'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "rawTx": "02f8738301388181c2846fc23ac0846fc23ad882cdc49494853bdc9c6add50d7842d1a3117fab38545747080b8...",
    "hashedTx": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076...",
    "requestId": "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
  }
}

Grant the right to send tokens

Creates a transaction that the from account approves to account to send the amount of tokens on behalf of the from account. from must be the token owner.

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/{contract}/approve
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/{contract}/approve
HTTP Method POST
Content-Type application/json

Path parameters

Field Name Description Type Required
contract the address of the token contract string Y

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Request body

Field Name Description Type Required
from the wallet address of the token owner account string Y
to the wallet address of the account that receives the right to send tokens string Y
amount the amount of tokens to be sent string Y
encoded whether the returned transaction is encoded or not true: Receive the encoded raw transaction string (data.rawTx). false: Receive the decoded data.rawTx (JSON). boolean N

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.rawTx the transaction data string or json
data.hashedTx This is hashed data.rawTx. This value is only returned when the API header x-network is "polygon" and the Request Body from is an multi sig wallet address. string
data.requestId the unique value that can identify each API request string

Request sample

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/0x5bd415aeb2b382c7fac9cc72c1f3994e33ff7b02/approve' 
  -H 'accept: */*' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...' 
  -H 'Content-Type: application/json' 
  -d '{
  "encoded": true,
  "from": "0xD6e69da7f1be111394dfef4C48eaC9b52ddf2Fd0",
  "to": "0xA10078576Ca6f63dc6f78ff9a8ed8bd05B51f463",
  "amount": "100"
}'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "rawTx": "02f8738301388181c2846fc23ac0846fc23ad882cdc49494853bdc9c6add50d7842d1a3117fab38545747080b8...",
    "hashedTx": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076...",
    "requestId": "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
  }
}

Deploy token contract

Creates a transaction that deploys the standard token contract.

Request URL

Live URL https://bc-api.qpyou.cn/core/v1/ft/contract
Sandbox URL https://sandbox-bc-api.qpyou.cn/core/v1/ft/contract
HTTP Method POST
Content-Type application/json

Header parameters

Field Name Description Type Required
x-network the blockchain networks string Y
Authorization Authentication token required to call the API string Y

Request body

Field Name Description Type Required
from the wallet address that deploys the token contract string Y
name the token name string Y
symbol the symbol of the token string Y
decimals the maximum decimal places of the token number Y
initialSupply the initial amount of the tokens minted string Y
encoded whether the returned transaction is encoded or not true: Receive the encoded raw transaction string (data.rawTx). false: Receive the decoded data.rawTx (JSON). boolean N

Responses

Field Name Description Type
code api request result code, 0: success number
message the result message String
data API response data json
data.rawTx the transaction data string or json
data.hashedTx This is hashed data.rawTx. This value is only returned when the API header x-network is "polygon" and the Request Body from is an multi sig wallet address. string
data.requestId the unique value that can identify each API request string

Request sample

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/ft/contract' 
  -H 'accept: */*' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...' 
  -H 'Content-Type: application/json' 
  -d '{
  "encoded": true,
  "from": "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765",
  "name": "Simple Token",
  "symbol": "ST",
  "decimals": 18,
  "initialSupply": "1000000000"
}'

Response sample

{
  "code": 0,
  "message": "success",
  "data": {
    "rawTx": "02f8738301388181c2846fc23ac0846fc23ad882cdc49494853bdc9c6add50d7842d1a3117fab38545747080b8...",
    "hashedTx": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076...",
    "requestId": "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
  }
}