跳轉至

NFT API

NFT(非同質化代幣)API 提供 NFT 鑄造、轉移及 NFT 相關資訊。

獲取 NFT 合約資訊

返回合約地址(contract)的NFT合約資訊。

請求 URL

直播網址 https://bc-api.qpyou.cn/core/v1/nft/{contract}
沙盒網址 https://sandbox-bc-api.qpyou.cn/core/v1/nft/{contract}
HTTP 方法 GET
內容類型 application/json

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串 Y

標頭參數

欄位名稱 描述 類型 必需
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,呼叫 API 所需 字串 Y

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果訊息 字串
data API 回應資料 json
data.name NFT 合約名稱 字串
data.symbol NFT 合約符號 字串

請求範例

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

回應範例

{
  "code": 0,
  "message": "success",
  "data": {
    "name": "Simple NFT",
    "symbol": "SNFT"
  }
}

獲取 NFT 資訊

返回一個代幣 ID (tokenId) 的 NFT 資訊。

請求 URL

路徑參數

欄位名稱 描述 類型 是否必填
contract NFT 合約地址 字串
tokenId NFT ID 字串

標頭參數

欄位名稱 描述 類型 必填
x-network 區塊鏈網絡 字串
Authorization 認證令牌,調用API所需 字串

回應

欄位名稱 描述 類型
code api 請求結果代碼,0: 成功 數字
message 結果訊息 字串
data API 回應數據 json
data.tokenUri 這是 NFT URI。格式為 ipfs://{cid},您可以使用 獲取元數據 API 獲取 NFT 資訊。 字串

請求範例

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

回應範例

{
  "code": 0,
  "message": "success",
  "data": {
    "tokenUri": "ipfs://QmZcH4YvBVVRJtdn4RdbaqgspFU8gH6P9vomDpBVpAL3u4"
  }
}

獲取 NFT 擁有者

返回具有令牌 ID (tokenId) 的 NFT 擁有者信息。

請求網址

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串
tokenId NFT ID 字串

標頭參數

欄位名稱 描述 類型 是否必填
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,調用 API 時需要 字串 Y

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.owner NFT 擁有者的地址 字串

請求範例

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

回應範例

{
  "code": 0,
  "message": "success",
  "data": {
    "owner": "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765"
  }
}

獲取授予 gend NFT 的帳戶資訊

返回授權發送特定NFT的帳戶資訊。

請求 URL

路徑參數

欄位名稱 描述 類型 必需
contract NFT 合約地址 字串
tokenId NFT ID 字串

標頭參數

欄位名稱 描述 類型 是否必填
x-network 區塊鏈網絡 字串
Authorization 認證令牌,呼叫 API 所需 字串

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.spenders 被授予發送 NFT 的帳戶地址列表。 字串[]

請求範例

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

回應範例

{
  "code": 0,
  "message": "success",
  "data": {
    "spenders": [
      "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765"
    ]
  }
}

檢查操作員發送所有NFT的權利

檢查 operator 帳戶是否可以發送 owner 的每個 NFT。所有 NFT 都是在 contract 地址鑄造的。

請求 URL

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串
owner NFT 擁有者帳戶 字串
operator 查詢有權發送 NFT 的帳戶 字串

標頭參數

欄位名稱 描述 類型 必填
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,呼叫 API 所需 字串 Y

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果訊息 字串
data API 回應數據 json
data.isOperator 帳戶是否有權限發送 NFT 布林值

請求範例

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

回應範例

{
  "code": 0,
  "message": "success",
  "data": {
    "isOperator": true
  }
}

發送 NFT

創建一個交易,將代幣發送到特定地址(to)。from 必須是代幣擁有者或被授權發送的帳戶。如果接收帳戶(to)是一個合約,則該合約可以使用 data 執行額外的任務。

請求 URL

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串 Y

標頭參數

欄位名稱 描述 類型 必需
x-network 區塊鏈網絡 字串
Authorization 認證令牌,用於調用 API 字串

請求主體

欄位名稱 描述 類型 是否必填
encoded 返回的交易是否編碼 true: 接收編碼的原始交易字串 (data.rawTx)。 false: 接收解碼的 data.rawTx (JSON)。 布林值 N
from 發送代幣的帳戶地址 字串 Y
to 接收代幣的帳戶地址 字串 Y
tokenId 要發送的代幣的代幣 ID 字串 Y
data 如果接收者是合約,將發送的數據 字串 N

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.rawTx 交易數據 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 為多重簽名錢包地址時,僅返回此值。 字串
data.requestId 可以識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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

鑄造 NFT

創建一個交易,將代幣鑄造到特定地址(to)。from 必須是有權鑄造的帳戶。

請求 URL

路徑參數

欄位名稱 描述 類型 是否必填
contract NFT 合約地址 字串

標頭參數

欄位名稱 描述 類型 必填
x-network 區塊鏈網絡 字串
Authorization 認證令牌,調用 API 所需 字串

請求主體

欄位名稱 描述 類型 是否必填
encoded 返回的交易是否被編碼 true: 接收編碼的原始交易字串(data.rawTx)。 false: 接收解碼的 data.rawTx(JSON)。 boolean N
from 這是鑄造代幣的帳戶地址。必須是擁有鑄造權限的帳戶。 string Y
to 接收代幣的帳戶地址 string Y
tokenId 要鑄造的代幣的代幣ID string Y
tokenUri 上傳元數據後獲得的元數據URI(data.uri string Y

回應

欄位名稱 描述 類型
code api 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.rawTx 交易數據 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 為多簽錢包地址時,僅返回此值。 字串
data.requestId 可以識別每個 API 請求的唯一值 字串

請求範例

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/nft/0xA3F4308Ed655f962dD7CA180545c21718fAE49AD/mint' 
  -H 'accept: */*' 
  -H 'x-network: polygon' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...' 
  -H 'Content-Type: application/json' 
  -d '{
  "encoded": true,
  "from": "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765",
  "to": "0xFBd488D1b00604d3b05124d80E35FeA9A39C3296",
  "tokenId": "11",
  "tokenUri": "ipfs://QmZcH4YvBVVRJtdn4RdbaqgspFU8gH6P9vomDpBVpAL3u4/11"
}'

回應範例

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

授予發送 NFT 的權利

創建一個交易,將特定代幣的發送權委託給一個地址(to)。from 必須是代幣的擁有者。

請求 URL

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串
tokenId NFT ID 字串

標頭參數

欄位名稱 描述 類型 必需
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,調用 API 所需 字串 Y

請求主體

欄位名稱 描述 類型 必需
encoded 返回的交易是否已編碼 true: 接收編碼的原始交易字串 (data.rawTx)。 false: 接收解碼的 data.rawTx (JSON)。 布林值 N
from 代幣擁有者的地址 字串 Y
to 將被授予發送代幣的帳戶地址 字串 Y

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.rawTx 交易數據 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 是多簽錢包地址時,才會返回此值。 字串
data.requestId 可以識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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

授予發送所有NFT的權利

創建一個交易,將from帳戶的所有代幣發送權委託給一個地址(to)。to帳戶也有權發送from帳戶將來擁有的代幣。

請求 URL

路徑參數

欄位名稱 描述 類型 必需
contract 這是 NFT 合約地址。to 帳戶將有權發送在此合約下鑄造的每個 NFT。 字串 Y

標頭參數

欄位名稱 描述 類型 必需
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,用於調用API 字串 Y

請求主體

字段名稱 描述 類型 是否必填
encoded 返回的交易是否編碼 true: 接收編碼的原始交易字符串 (data.rawTx)。 false: 接收解碼的 data.rawTx (JSON)。 boolean N
from 代幣擁有者的地址 string Y
to 將被授予發送代幣的帳戶地址 string Y

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果訊息 字串
data API 回應數據 json
data.rawTx 交易數據 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 是多重簽名錢包地址時,僅返回此值。 字串
data.requestId 可識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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

重新獲得發送 NFT 的權利

創建一個交易,取消從地址(to)發送特定代幣的權利。from 必須是代幣的擁有者。

請求 URL

路徑參數

欄位名稱 描述 類型 必需
contract NFT 合約地址 字串 Y
tokenId NFT ID 字串 Y

標頭參數

欄位名稱 描述 類型 必填
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,調用 API 時需要 字串 Y

請求主體

欄位名稱 描述 類型 必需
encoded 返回的交易是否已編碼 true: 接收編碼的原始交易字符串(data.rawTx)。 false: 接收解碼的 data.rawTx(JSON)。 boolean N
from 代幣擁有者的地址 string Y
to 將被剝奪發送代幣權利的帳戶地址(如果使用Polygon區塊鏈,則此值應留空。) string N

回應

欄位名稱 描述 類型
code API 請求結果代碼,0:成功 數字
message 結果消息 字串
data API 回應數據 json
data.rawTx 交易數據 字串或 json
data.hashedTx 這是哈希的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 為多簽錢包地址時,僅返回此值。 字串
data.requestId 可以識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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

重新獲得發送所有NFT的權利

創建一個交易,取消從地址(to)發送所有代幣的權利。from 必須是代幣擁有者。在 ERC-721 代幣(以太坊、Polygon)的情況下,to 帳戶地址不是必需的。

請求 URL

直播網址 https://bc-api.qpyou.cn/core/v1/nft/{contract}/revoke
沙盒網址 https://sandbox-bc-api.qpyou.cn/core/v1/nft/{contract}/revoke
HTTP 方法 POST
內容類型 application/json

路徑參數

欄位名稱 描述 類型 必填
contract NFT 合約地址 字串 Y

標頭參數

欄位名稱 描述 類型 是否必填
x-network 區塊鏈網絡 字串
Authorization 認證令牌,呼叫 API 時需要 字串

請求主體

字段名稱 描述 類型 必需
encoded 返回的交易是否被編碼 true: 接收編碼的原始交易字符串(data.rawTx)。 false: 接收解碼的 data.rawTx(JSON)。 boolean N
from 代幣擁有者的地址 string Y
to 將被剝奪發送代幣權利的帳戶地址(如果使用Polygon區塊鏈,則應留空)。 string N

回應

欄位名稱 描述 類型
code api 請求結果代碼,0: 成功 數字
message 結果訊息 字串
data API 回應資料 json
data.rawTx 交易資料 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 是多簽錢包地址時,僅返回此值。 字串
data.requestId 可以識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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

部署 NFT 合約

創建一個部署標準(ERC-721)NFT合約的交易。

請求 URL

實時網址 https://bc-api.qpyou.cn/core/v1/nft/contract
沙盒網址 https://sandbox-bc-api.qpyou.cn/core/v1/nft/contract
HTTP 方法 POST
內容類型 application/json

標頭參數

欄位名稱 描述 類型 必需
x-network 區塊鏈網絡 字串 Y
Authorization 認證令牌,呼叫 API 所需 字串 Y

請求主體

欄位名稱 描述 類型 必需
encoded 返回的交易是否編碼 true: 接收編碼的原始交易字符串(data.rawTx)。 false: 接收解碼的 data.rawTx(JSON)。 布林值
from 部署合約的帳戶地址 字串
name NFT 合約名稱 字串
symbol NFT 合約符號 字串
minter 這是可以在此 NFT 合約中鑄造 NFT 的帳戶地址。 字串

回應

欄位名稱 描述 類型
code API 請求結果代碼,0: 成功 數字
message 結果訊息 字串
data API 回應資料 json
data.rawTx 交易資料 字串或 json
data.hashedTx 這是雜湊的 data.rawTx。當 API 標頭 x-network 為 "polygon" 且請求主體 from 是多簽錢包地址時,才會返回此值。 字串
data.requestId 可識別每個 API 請求的唯一值 字串

請求範例

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

回應範例

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