ロックAPI ロックAPIは、NFTの取引をロックしたり、再度取引できるように解放したりする機能を提供します。
デプロイロック契約 ロック契約をデプロイするトランザクションを作成します。ロック契約は、NFTをウォレットにロックし、他のアカウントと取引されるのを防ぐか、再び取引できるように解放します。
リクエストURL ヘッダーパラメータ フィールド名 説明 タイプ 必須 x-network ブロックチェーンネットワーク 文字列 Y Authorization APIを呼び出すために必要な認証トークン 文字列 Y
リクエストボディ フィールド名 説明 タイプ 必須 name ロック契約の名前 文字列 Y from ロック契約をデプロイするウォレットアドレス 文字列 Y executer これはロックされたNFTをアンロックできるウォレットアドレスです。デフォルト値はfrom
アドレスです。 文字列 N encoded 戻されるトランザクションがエンコードされているかどうか true
: エンコードされた生トランザクション文字列(data.rawTx
)を受け取ります。 false
: デコードされたdata.rawTx
(JSON)を受け取ります。 ブール値 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/lock/contract'
-H 'accept: application/json'
-H 'x-network: polygon'
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'
-H 'Content-Type: application/json'
-d '{
"encoded": true,
"name": "lock_test",
"from": "0xdcd51770d06B54204abd8c30A25b4583D4cABa39"
}'
レスポンスサンプル {
"code" : 0 ,
"message" : "success" ,
"data" : {
"rawTx" : "02f8738301388181c2846fc23ac0846fc23ad882cdc49494853bdc9c6add50d7842d1a3117fab38545747080b8..." ,
"hashedTx" : "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076..." ,
"requestId" : "4d4aa1e5-2bfe-4080-b42f-03319810fe29"
}
}
ロックNFT NFT所有者アカウント(from
)がNFT(tokenId
)をロック契約に送信するトランザクションを作成します。NFTがロック契約に送信されると、このNFTの所有権はロック契約に移転し、以前の所有者はこのNFTを別のアカウントに送信できなくなります。
リクエストURL パスパラメータ フィールド名 説明 タイプ 必須 contract NFTコントラクトアドレス 文字列 Y
ヘッダー パラメータ フィールド名 説明 タイプ 必須 x-network ブロックチェーンネットワーク 文字列 Y Authorization APIを呼び出すために必要な認証トークン 文字列 Y
リクエストボディ フィールド名 説明 タイプ 必須 from NFT所有者のウォレットアドレス 文字列 Y lockContract NFTロック契約のアドレス 文字列 Y tokenId NFT ID 文字列 Y encoded 戻り値のトランザクションがエンコードされているかどうか true
: エンコードされた生トランザクション文字列(data.rawTx
)を受け取ります。 false
: デコードされた data.rawTx
(JSON)を受け取ります。 ブール値 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/contract/0x777358b228a4720ffa088516294b324f8d24639c/lock'
-H 'accept: application/json'
-H 'x-network: polygon'
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'
-H 'Content-Type: application/json'
-d '{
"from": "0xA10078576Ca6f63dc6f78ff9a8ed8bd05B51f463",
"lockContract": "0xD6e69da7f1be111394dfef4C48eaC9b52ddf2Fd0",
"tokenId": "1",
"encoded": true
}'
レスポンスサンプル // When the encoded is set to true
{
"code" : 0 ,
"message" : "success" ,
"data" : {
"rawTx" : "02f8d3830138810b8458e948068458e948168302e71494ebd9144485089ebe248f8490..." ,
"hashedTx" : "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076..." ,
"requestId" : "5743f0aa-0323-47fc-a3da-173eee27bbe4"
}
}
// When the encoded is set to false
{
"code" : 0 ,
"message" : "success" ,
"data" : {
"rawTx" : {
"from" : "0xdcd51770d06B54204abd8c30A25b4583D4cABa39" ,
"to" : "0xebd9144485089ebe248f8490984a60579407c262" ,
"data" : "0xb88d4fde000000000000000000000000dcd51770d06b54204abd8c30a25b4583d4cab..." ,
"nonce" : 11 ,
"chainId" : 80001 ,
"gas" : 190228 ,
"maxFeePerGas" : 1491259270 ,
"maxPriorityFeePerGas" : 1491259255
},
"hashedTx" : "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076..." ,
"requestId" : "dd33ddd8-31fa-4491-9c3c-2f912f7059bc"
}
}
NFTをアンロック ロック契約がNFT(tokenId
)をNFT所有者アカウントに返送するトランザクションを作成します。NFTがNFT所有者アカウントに返送されると、このアカウントはこのNFTの取引を再開できます。
リクエストURL パスパラメータ フィールド名 説明 タイプ 必須 contract NFTロック契約のアドレス 文字列 Y
ヘッダーパラメータ フィールド名 説明 タイプ 必須 x-network ブロックチェーンネットワーク 文字列 Y Authorization APIを呼び出すために必要な認証トークン 文字列 Y
リクエストボディ フィールド名 説明 タイプ 必須 nftContract NFTコントラクトアドレス 文字列 Y from ロックコントラクトをデプロイしたアカウント(ロックコントラクトの所有者)のウォレットアドレス 文字列 Y tokenId NFT ID 文字列 Y encoded 戻り値のトランザクションがエンコードされているかどうか true
: エンコードされた生トランザクション文字列(data.rawTx
)を受け取ります。 false
: デコードされた data.rawTx
(JSON)を受け取ります。 ブール値 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/lock/contract/0xa245824a24daf3b312d3f59c7debf162c4993e8b/unlock'
-H 'accept: application/json'
-H 'x-network: polygon'
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'
-H 'Content-Type: application/json'
-d '{
"nftContract": "0xdcd51770d06B54204abd8c30A25b4583D4cABa39",
"from": "0xdcd51770d06B54204abd8c30A25b4583D4cABa39",
"tokenId": "1",
"encoded": true
}'
応答サンプル {
"code" : 0 ,
"message" : "success" ,
"data" : {
"rawTx" : "02f873830138810c8451f4d5c08451f4d5cf83018c0694572f47db51a98..." ,
"hashedTx" : "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076..." ,
"requestId" : "0e40db96-8964-410f-81e2-a968269872d4"
}
}
ロックされたNFTの所有者情報を取得する ロックされたNFT(tokenId
)を所有するアカウントの情報を返します。
リクエストURL パスパラメータ フィールド名 説明 タイプ 必須 contract NFTロック契約のアドレス 文字列 Y tokenId NFT ID 文字列 Y
ヘッダーパラメータ フィールド名 説明 タイプ 必須 x-network ブロックチェーンネットワーク 文字列 Y Authorization APIを呼び出すために必要な認証トークン 文字列 Y
クエリパラメータ フィールド名 説明 タイプ 必須 nftContract NFTコントラクトアドレス 文字列 Y
応答 フィールド名 説明 タイプ code APIリクエスト結果コード、0: 成功 数字 message 結果メッセージ 文字列 data APIレスポンスデータ JSON data.owner NFT所有者のアドレス 文字列
リクエストサンプル curl -X 'GET'
'https://sandbox-bc-api.qpyou.cn/core/v1/lock/contract/0xa245824a24daf3b312d3f59c7debf162c4993e8b/token/1/account?nftContract=0x777358b228a4720ffa088516294b324f8d24639c'
-H 'accept: application/json'
-H 'x-network: polygon'
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'
応答サンプル {
"code" : 0 ,
"message" : "success" ,
"data" : {
"owner" : "0xA10078576Ca6f63dc6f78ff9a8ed8bd05B51f463"
}
}
ロックされたNFT情報を取得 ロック契約(contract
)にあるオーナー(owner
)のロックされたNFTの情報を取得します。
リクエストURL パスパラメータ フィールド名 説明 タイプ 必須 contract NFTロック契約のアドレス 文字列 Y owner NFT所有者のアドレス 文字列 Y
ヘッダーパラメータ フィールド名 説明 タイプ 必須 x-network ブロックチェーンネットワーク 文字列 Y Authorization APIを呼び出すために必要な認証トークン 文字列 Y
応答 フィールド名 説明 タイプ code APIリクエスト結果コード、0: 成功 数値 message 結果メッセージ 文字列 data APIレスポンスデータ JSON data.tokens ロックされたNFTのリスト 配列 data.tokens.owner NFT所有者のウォレットアドレス 文字列 data.tokens.nftAddress NFT契約アドレス 文字列 data.tokens.tokenId NFT ID 文字列
リクエストサンプル curl -X 'GET'
'https://sandbox-bc-api.qpyou.cn/core/v1/lock/contract/0xa245824a24daf3b312d3f59c7debf162c4993e8b/account/0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765/tokens'
-H 'accept: application/json'
-H 'x-network: polygon'
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJp...'
応答サンプル {
"code" : 0 ,
"message" : "success" ,
"data" : {
"tokens" : [
{
"owner" : "0xA10078576Ca6f63dc6f78ff9a8ed8bd05B51f463" ,
"nftAddress" : "0xeBd9144485089EbE248f8490984A60579407c262" ,
"tokenId" : "2"
}
]
}
}