ข้ามไปที่เนื้อหา

API การทำธุรกรรม

API การทำธุรกรรมส่งธุรกรรมและรับข้อมูลของพวกเขา

สร้างธุรกรรม

สร้างธุรกรรมที่จะส่งไปยังเครือข่ายบล็อกเชน คุณสามารถสร้างธุรกรรมเพื่อส่งโทเค็นพื้นเมืองหรือดำเนินการสัญญาอัจฉริยะ

URL ที่ร้องขอ

ลิงก์สด https://bc-api.qpyou.cn/core/v1/tx
ลิงก์ Sandbox https://sandbox-bc-api.qpyou.cn/core/v1/tx
วิธีการ HTTP POST
ประเภทเนื้อหา application/json

พารามิเตอร์หัวเรื่อง

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
x-network เครือข่ายบล็อกเชน สตริง ใช่
Authorization โทเค็นการตรวจสอบสิทธิ์สำหรับเรียกใช้ API สตริง ใช่

เนื้อหาคำขอ

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
from ที่อยู่บัญชีที่จะส่งธุรกรรมไปยังบล็อกเชน string Y
to * สำหรับธุรกรรมสัญญาอัจฉริยะ เช่น ธุรกรรมที่เรียกใช้ฟังก์ชันของสัญญา: ที่อยู่ของสัญญาอัจฉริยะ
* สำหรับธุรกรรมที่ส่งโทเค็นพื้นเมือง: ที่อยู่บัญชีที่จะได้รับโทเค็น
string Y
amount * สำหรับธุรกรรมสัญญาอัจฉริยะ เช่น ธุรกรรมที่เรียกใช้ฟังก์ชันของสัญญา: ป้อน 0
* สำหรับธุรกรรมที่ส่งโทเค็นพื้นเมือง: ป้อนจำนวนโทเค็นที่จะส่ง
string Y
data สำหรับธุรกรรมสัญญาอัจฉริยะ นี่คือชื่อฟังก์ชันของสัญญาและข้อมูลพารามิเตอร์ของฟังก์ชันของสัญญา
* Polygon: Web3js encodeABI สามารถใช้เพื่อสร้างค่า data
* XPLA: การสร้างข้อความ XPLAjs สามารถใช้เพื่อสร้างค่า data
json * สำหรับธุรกรรมสัญญาอัจฉริยะ: Y
* สำหรับธุรกรรมที่ส่งโทเค็นพื้นเมือง: N
encoded ธุรกรรมที่ส่งกลับควรเข้ารหัสหรือไม่ (true: สตริงธุรกรรมดิบที่เข้ารหัส, false: ผลลัพธ์ JSON ที่ถอดรหัส) boolean N

การตอบสนอง

ชื่อฟิลด์ คำอธิบาย ประเภท
code รหัสผลลัพธ์การเรียก API, 0: สำเร็จ number
message ข้อความผลลัพธ์ string
data ข้อมูลการตอบกลับจาก API json
data.rawTx ข้อมูลธุรกรรม string หรือ json
data.hashedTx data.rawTx ที่ถูกแฮช คุณจะได้รับค่าตัวนี้เฉพาะเมื่อส่วนหัวของ API x-network เป็น polygon และ Request Body from เป็นที่อยู่กระเป๋าเงินหลายลายเซ็น string
data.requestId รหัสประจำตัวที่ไม่ซ้ำกันสำหรับคำขอ API string

ตัวอย่างคำขอ

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

ตัวอย่างการตอบกลับ

{
  "code": 0,
  "message": "success",
  "data": {
    "rawTx": "02f68301388182013484618b021e84618b0235827b0c94fbd488d1b00604d3b05124d80e35fea9a39c329687038d7ea4c6800080c0808080",
    "requestId": "93ff43f7-3e19-42e1-a7d0-bbff40be1361"
  }
}

รับข้อมูลการทำธุรกรรม

ใช้แฮชธุรกรรม (txhash) เพื่อดึงข้อมูลธุรกรรม ข้อมูลของธุรกรรมที่บันทึกไว้ในบล็อกเชนเท่านั้นที่สามารถส่งคืนได้

URL การร้องขอ

ลิงก์สด https://bc-api.qpyou.cn/core/v1/tx/{txhash}
ลิงก์ Sandbox https://sandbox-bc-api.qpyou.cn/core/v1/tx/{txhash}
วิธีการ HTTP GET
ประเภทเนื้อหา application/json

พารามิเตอร์เส้นทาง

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
txhash แฮชของธุรกรรม สตริง ใช่

พารามิเตอร์หัวเรื่อง

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
x-network เครือข่ายบล็อกเชน สตริง ใช่
Authorization โทเค็นการตรวจสอบสิทธิ์ที่จำเป็นในการเรียก API สตริง ใช่

การตอบสนอง

ชื่อฟิลด์ คำอธิบาย ประเภท
code รหัสผลลัพธ์ของคำขอ API, 0: สำเร็จ number
message ข้อความผลลัพธ์ String
data ข้อมูลการตอบกลับของ API json
data.txhash แฮชของธุรกรรม string
data.blockNumber หมายเลขบล็อกของบล็อกที่มีธุรกรรม number
data.contractAddress ที่อยู่ของสัญญาหากธุรกรรมเกี่ยวข้องกับการปรับใช้สัญญา string
data.status สถานะของธุรกรรม (success หลังจากที่ธุรกรรมถูกบันทึกสำเร็จในบล็อกของบล็อกเชน) string
data.fee ค่าธรรมเนียมที่ใช้ json
data.data ข้อมูลธุรกรรม
* Polygon
* XPLA
json
data.logs บันทึกธุรกรรม json

ตัวอย่างคำขอ

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

ตัวอย่างการตอบกลับ

// Polygon Transaction
{
  "code": 0,
  "message": "success",
  "data": {
    "txhash": "0x5a0ca3a7eebbafa946da6ed0160930fc4f334887dbf11a9b38937ab8831fd125",
    "blockNumber": 33457511,
    "contractAddress": "0x4377C1bE43Db73561f1179e2637CFf0bbD617eFC",
    "status": "success",
    "fee": {
      "gas": 151232,
      ...
    },
    "data": {
      "from": "0x9428e6eF51FEb2201676deEc11B7E36F7c1F0765",
      ..
     },
    "logs": [
      {
        "transactionHash": "0x5a0ca3a7eebbafa946da6ed0160930fc4f334887dbf11a9b38937ab8831fd125",
        ....
      }
    ]
  }
}
// Xpla Transaction
{
  "code": 0,
  "message": "success",
  "data": {
    "txhash": "E21E0CC37CD1BCACADFDEBD4C7AF2F68257EA4591D670F4AA0A725B21422C29F",
    "blockNumber": 4818400,
    "contractAddress": "0x4377C1bE43Db73561f1179e2637CFf0bbD617eFC",
    "status": "success",
    "fee": {
      "gasUsed": 21000,
      ...
    },
    "data": {
      "memo": "",
      ...
    },
    "logs": [
      {
        "msg_index": 0,
        ...
      }
    ]
  }}

ส่งธุรกรรม

ส่งธุรกรรมที่ลงนามไปยังบล็อกเชน。

Note

การลงนามในธุรกรรมจะต้องทำโดยผู้เล่นในกระเป๋าเงินส่วนตัวของเขา/เธอ หรือจะต้องให้บริการโดยสตูดิโอเกม。

Note

การโอนอาจล้มเหลวแม้ว่าจะมีการส่งกลับแฮชธุรกรรม (txhash) ในการตอบกลับ กรุณาตรวจสอบ data.status จาก API ข้อมูลธุรกรรมเพื่อยืนยันผลการโอนของธุรกรรม

URL ที่ร้องขอ

ลิงก์สด https://bc-api.qpyou.cn/core/v1/send
ลิงก์ Sandbox https://sandbox-bc-api.qpyou.cn/core/v1/send
วิธีการ HTTP POST
ประเภทเนื้อหา application/json

พารามิเตอร์หัวเรื่อง

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
x-network เครือข่ายบล็อกเชน สตริง ใช่
Authorization โทเค็นการตรวจสอบสิทธิ์ที่จำเป็นในการเรียก API สตริง ใช่

เนื้อหาคำขอ

Note

ตัวแจ้งเตือนผลการโอนธุรกรรม (callbackUrl) จะมีให้เฉพาะจาก Hive Blockchain API เท่านั้น.

ชื่อฟิลด์ คำอธิบาย ประเภท จำเป็น
signedTx ธุรกรรมที่ลงนามแล้ว สตริง ใช่
sync กระบวนการซิงโครนัส/อะซิงโครนัสของธุรกรรม
* true: ธุรกรรมจะถูกประมวลผลในลักษณะซิงโครนัส ซึ่งหมายความว่า API จะรอจนกว่าธุรกรรมจะเสร็จสิ้นการบันทึกบนบล็อกเชน หลังจากส่งคำขอ API แล้ว API จะรอจนกว่าจะได้รับค่าผลลัพธ์ (txHash)
* false: ธุรกรรมจะถูกประมวลผลในลักษณะอะซิงโครนัส ซึ่งหมายความว่าคุณอาจไม่ได้รับผลลัพธ์ของการโอนธุรกรรมในขณะนั้น คุณต้องใช้ API ข้อมูลธุรกรรมเพื่อยืนยันผลลัพธ์ของการโอนธุรกรรม
บูลีน ใช่

การตอบกลับ

ชื่อฟิลด์ คำอธิบาย ประเภท
code รหัสผลลัพธ์การร้องขอ API, 0: สำเร็จ หมายเลข
message ข้อความผลลัพธ์ สตริง
data ข้อมูลการตอบกลับ API json
data.txhash แฮชการทำธุรกรรม สตริง
data.status สถานะการทำธุรกรรม สตริง
Note

หากเป็นแบบอะซิงโครนัส คุณอาจไม่สามารถรับการตอบสนองได้หรือ data.status อาจเป็น pending สถานะจะถูกเปลี่ยนหลังจากที่ธุรกรรมถูกโหลดบนบล็อกเชน.

ตัวอย่างคำขอ

curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/send' 
  -H 'accept: application/json' 
  -H 'x-network: polygon' 
  -H 'Content-Type: application/json' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNvbS5jb20yd...' 
  -d '{
  "signedTx": "0x02f8b58301388181b985016d14154585016d1415578289219494853bdc9c...",
  "sync": false
}'

ตัวอย่างการตอบกลับ

// Polygon
{
  "code": 0,
  "message": "success",
  "data": {
    "txhash": "0x53e8783e4da707daf58c96a8cea278e7b2a8a5f185af0913b518974556c79076",
    "status": "pending"
  }
}
// Xpla
{
  "code": 0,
  "message": "success",
  "data": {
    "txhash": "84655BB965D709A4AAD4104C7FFBD8E42F52F0BB313493FFDCA02B01FE983A8F",
    "status": "pending"
  }
}