การจับคู่ตามรหัสเชิญ
ฟีเจอร์การเชิญผู้ใช้คือฟีเจอร์ที่อนุญาตให้ผู้ใช้สามารถออกโค้ดเชิญเพื่อเชิญผู้ใช้อื่นเข้าสู่เกมและรับรางวัลจากนักพัฒนาสำหรับการทำเช่นนั้น API การเชิญผู้ใช้คือ API ที่อนุญาตให้เกมออกโค้ดเชิญและจับคู่ผู้ใช้ที่ได้ตอบรับคำเชิญ
Warning
Header การอนุญาตไม่จำเป็นสำหรับ API ทั้งหมดด้านล่าง อย่างไรก็ตาม เพื่อเหตุผลด้านความปลอดภัย แนะนำให้ใช้ คีย์การตรวจสอบสิทธิ์ของ Hive และเรียก API โดยตรงจากเซิร์ฟเวอร์เกม.
วิธีการใช้งาน
- ใน Hive console > Promotion > User Invitation > Register Invitation Campaign ให้สร้าง แคมเปญ โดยใช้ประเภทการออกโค้ดเชิญ
- ดึง ข้อมูลแคมเปญเชิญ และเก็บ ID แคมเปญที่ใช้ได้บนเซิร์ฟเวอร์เกม
- บนหน้าเชิญผู้ใช้ ให้ส่งข้อมูลผู้เชิญที่ได้รับและ ID แคมเปญที่บันทึกไว้ข้างต้นเป็นพารามิเตอร์การเรียกเพื่อ ออกโค้ดเชิญ
- ส่งข้อมูลของผู้เชิญ (
player_id
เป็นต้น) และโค้ดเชิญที่ได้รับจากผู้เชิญเป็นพารามิเตอร์การเรียกและทำการ matching request - เรียก check reward status เพื่อแสดงความก้าวหน้าสำหรับการรับรางวัลบนหน้าเชิญผู้ใช้
การเตรียมการ
ในการใช้ API ที่เกี่ยวข้องกับรหัสเชิญ คุณต้องเตรียมรายการต่อไปนี้
- รหัสการตรวจสอบสิทธิ์ Hive ที่จะใช้ใน Authorization Header: Hive Console > App Center > Project Management > เลือกแอปหลังจากค้นหาแอป > รายละเอียดเกม > ข้อมูลพื้นฐาน > รหัสการตรวจสอบสิทธิ์ Hive
server_id
: Hive Console > App Center > Project Management > เลือกแอปหลังจากค้นหาแอป > รายละเอียดเกม > เซิร์ฟเวอร์เกม - แคมเปญเชิญชวน: ออกประเภทรหัสเชิญโดยการลงทะเบียน สร้างแคมเปญ ใน Hive Console > Promotion > User Invitation > การลงทะเบียนแคมเปญเชิญชวน
การดึงข้อมูลแคมเปญ
กำลังดึงข้อมูลแคมเปญเชิญชวนที่สร้างขึ้นในคอนโซล Hive ข้อมูลแคมเปญเชิญชวนที่ใช้งานอยู่และพร้อมใช้งานเท่านั้นที่จะถูกดึงมา ข้อมูลรางวัลที่ตั้งไว้สำหรับแคมเปญจะถูกรวมอยู่ในคำตอบด้วย
ข้อกำหนดการร้องขอ API
URL การร้องขอ
สภาพแวดล้อม | URL |
เชิงพาณิชย์ | https://promotion.qpyou.cn/ua/inviteCode/campaign |
Sandbox | https://sandbox-promotion.qpyou.cn/ua/inviteCode/campaign |
วิธีการร้องขอและรูปแบบข้อมูล
รายการ | คำอธิบาย |
วิธีการ HTTP | POST |
ประเภทเนื้อหา | application/json |
หัวข้อ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
Authorization | การตรวจสอบความถูกต้องของ certificationKey ผ่านการรับรอง Bearer | String | N |
เนื้อหาคำขอ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
gameindex | หมายเลขเกมที่ไม่ซ้ำกัน | จำนวนเต็ม | ใช่ |
ตัวอย่างการโทร
curl -L -v -X POST --location "http://sandbox-promotion.qpyou.cn/ua/inviteCode/campaign" \
-H "Content-Type: application/json" \
-d '{
"gameindex": 539
}'
ข้อกำหนดการตอบสนอง API
การตอบสนอง
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
result_code | รหัสการตอบกลับ - 200: สำเร็จ
- อื่นๆ: ล้มเหลว
| จำนวนเต็ม | ใช่ |
result_message | ข้อความการตอบกลับ | สตริง | ใช่ |
campaign_list | รายการแคมเปญรหัสเชิญ | อาร์เรย์ | ใช่ |
ㄴ id | รหัสแคมเปญส่งเสริม | จำนวนเต็ม | ไม่ |
ㄴ title | ชื่อแคมเปญ | สตริง | ไม่ |
ㄴ rewards | รายการรางวัล | อาร์เรย์ | ไม่ |
ㄴㄴ reward_id | รหัสรางวัล | จำนวนเต็ม | ไม่ |
ㄴㄴ description | คำอธิบายรางวัล | สตริง | ไม่ |
ㄴㄴ reward_type | ประเภทของรางวัล - action: รางวัลจากการกระทำ
- goal: รางวัลจากการบรรลุเป้าหมาย
| สตริง | ไม่ |
ㄴㄴ action_type | ประเภทการกระทำ - match: การจับคู่
- cpi: การติดตั้ง
- cpa: การบรรลุการกระทำเฉพาะ
| สตริง | ไม่ |
ㄴㄴ cpa_code | หมายเลข CPA ที่ไม่ซ้ำ - ให้ค่าที่ถูกต้องหากประเภทการกระทำคือ cpa
- ให้ Null หากไม่ใช่ cpa
| จำนวนเต็ม | ไม่ |
ㄴㄴ goal | จำนวนเป้าหมาย | จำนวนเต็ม | ไม่ |
ㄴㄴ limit | ขีดจำกัดรางวัล | จำนวนเต็ม | ไม่ |
ตัวอย่างการตอบกลับ
{
"campaign_list": [
{
"id": "19",
"title": "초대 코드 발급_행동_설치(초대 2, 수락 3, 제한 2)",
"rewards": [
{
"reward_id": 33,
"description": "행동_설치(초대 2, 수락 3, 제한 2)",
"reward_type": "action",
"action_type": "cpi",
"cpa_code": null,
"goal": 1,
"limit": 2
}
]
}
],
"result_code": 200,
"result_message": "Success"
}
รับรหัสเชิญ
ผู้ใช้สามารถรับรหัสเชิญในแคมเปญได้ แคมเปญแต่ละรายการสามารถออกเพียงรหัสเชิญเดียวเท่านั้น เพื่อเป็นรางวัลให้กับผู้เชิญ จะต้องมีการระบุ ID เซิร์ฟเวอร์ที่ผู้เชิญเข้าถึง
ข้อกำหนดการร้องขอ API
URL ที่ร้องขอ
สภาพแวดล้อม | URL |
การผลิต | https://promotion.qpyou.cn/ua/inviteCode/getCode |
Sandbox | https://sandbox-promotion.qpyou.cn/ua/inviteCode/getCode |
วิธีการร้องขอและรูปแบบข้อมูล
รายการ | คำอธิบาย |
HTTP วิธี | POST |
ประเภทเนื้อหา | application/json |
หัวข้อ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
Authorization | การตรวจสอบความถูกต้องของ certificationKey ผ่านการรับรอง Bearer | String | N |
เนื้อหาการร้องขอ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
gameindex | หมายเลขเกมที่ไม่ซ้ำกัน | จำนวนเต็ม | ใช่ |
campaign_id | หมายเลขที่ไม่ซ้ำกันสำหรับแคมเปญรหัสเชิญ | จำนวนเต็ม | ใช่ |
player_id | ต้องการ vid หรือ uid ขึ้นอยู่กับโมดูล - vid: จำเป็นสำหรับโมดูลที่รวม - uid: จำเป็นสำหรับโมดูลเดี่ยว | สตริง | ใช่ |
server_id | รหัสที่ไม่ซ้ำกันสำหรับเซิร์ฟเวอร์เกม | สตริง | ใช่ |
ตัวอย่างการโทร
curl -L -v -X POST --location "http://sandbox-promotion.qpyou.cn/ua/inviteCode/getCode" \
-H "Content-Type: application/json" \
-d '{
"gameindex" : 539,
"campaign_id": 19,
"player_id" : 12341234,
"server_id" : "kr"
}'
ข้อกำหนดการตอบสนอง API
การตอบกลับ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
result_code | รหัสการตอบกลับ - 200: สำเร็จ
- อื่นๆ: ล้มเหลว
| จำนวนเต็ม | Y |
result_message | ข้อความการตอบกลับ | สตริง | Y |
invite_code | รหัสเชิญที่ออก | สตริง | Y |
ตัวอย่างการตอบกลับ
{
"invite_code": "ESOJ0TOC",
"result_code": 200,
"result_message": "Success"
}
รหัสเชิญที่ตรงกัน
กรอกโค้ดเชิญเพื่อ จับคู่ ผู้เชิญและผู้รับ เพื่อป้องกันการใช้รางวัลในทางที่ผิด แนะนำให้ตรวจสอบข้อมูลบัญชีของผู้รับบนเซิร์ฟเวอร์เกมก่อนที่จะทำการขอจับคู่ รางวัลการจับคู่จะมอบให้เพียงครั้งเดียวต่อแคมเปญ
ข้อกำหนดการร้องขอ API
URL ที่ร้องขอ
สภาพแวดล้อม | URL |
เชิงพาณิชย์ | https://promotion.qpyou.cn/ua/inviteCode/companion |
Sandbox | https://sandbox-promotion.qpyou.cn/ua/inviteCode/companion |
วิธีการร้องขอและรูปแบบข้อมูล
รายการ | คำอธิบาย |
HTTP วิธี | POST |
ประเภทเนื้อหา | application/json |
หัวข้อ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
Authorization | การตรวจสอบความถูกต้องของ certificationKey ผ่านการตรวจสอบ Bearer | String | N |
เนื้อหาคำขอ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
gameindex | หมายเลขเกมที่ไม่ซ้ำกัน | จำนวนเต็ม | ใช่ |
invite_code | รหัสเชิญที่ออก | สตริง | ใช่ |
player_id | ต้องการ vid หรือ uid ขึ้นอยู่กับโมดูล - vid: จำเป็นสำหรับโมดูลรวม - uid: จำเป็นสำหรับโมดูลเดี่ยว | สตริง | ใช่ |
server_id | รหัสประจำตัวที่ไม่ซ้ำกันของเซิร์ฟเวอร์เกม | สตริง | ใช่ |
ตัวอย่างการโทร
curl -L -v -X POST --location "http://sandbox-promotion.qpyou.cn/ua/inviteCode/companion" \
-H "Content-Type: application/json" \
-d '{
"gameindex" : 539,
"invite_code" :"ESOJ0TOC",
"player_id" : 234234,
"server_id" : "kr"
}'
ข้อกำหนดการตอบสนอง API
การตอบสนอง
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
result_code | รหัสการตอบกลับ - 200: สำเร็จ
- อื่นๆ: ล้มเหลว
| จำนวนเต็ม | ใช่ |
result_message | ข้อความการตอบกลับ | สตริง | ใช่ |
detail | รหัสคำเชิญที่ออก | อาเรย์ | ใช่ |
ㄴㄴmatched | สถานะการจับคู่ | บูลีน | ใช่ |
ㄴㄴreason | สาเหตุของการล้มเหลวในการจับคู่ | สตริง | ใช่ |
ตัวอย่างการตอบกลับ
{
"detail": {
"matched": true,
"reason": "Both matching and rewards were successful"
},
"result_code": 200,
"result_message": "Success"
}
ตรวจสอบสถานะรางวัล
กำลังตรวจสอบสถานะรางวัลของรหัสเชิญ
ข้อกำหนดการร้องขอ API
URL ที่ร้องขอ
สภาพแวดล้อม | URL |
การผลิต | https://promotion.qpyou.cn/ua/inviteCode/progress |
Sandbox | https://sandbox-promotion.qpyou.cn/ua/inviteCode/progress |
วิธีการร้องขอและรูปแบบข้อมูล
รายการ | คำอธิบาย |
HTTP วิธีการ | POST |
ประเภทเนื้อหา | application/json |
หัวข้อ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
Authorization | การตรวจสอบความถูกต้องของ certificationKey ผ่านการรับรอง Bearer | String | N |
เนื้อหาคำขอ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
gameindex | หมายเลขเกมที่ไม่ซ้ำกัน | จำนวนเต็ม | ใช่ |
invite_code | รหัสเชิญที่ออกให้ | สตริง | ใช่ |
ตัวอย่างการโทร
curl -L -v -X POST --location "http://sandbox-promotion.qpyou.cn/ua/inviteCode/progress" \
-H "Content-Type: application/json" \
-d '{
"gameindex" : 539,
"invite_code" :"ESOJ0TOC"
}'
ข้อกำหนดการตอบสนอง API
การตอบกลับ
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
result_code | รหัสการตอบกลับ - 200: สำเร็จ
- อื่นๆ: ล้มเหลว
| จำนวนเต็ม | ใช่ |
result_message | ข้อความการตอบกลับ | สตริง | ใช่ |
progress_list | รายการสถานะความก้าวหน้าของรางวัล (หากไม่มีประวัติความก้าวหน้าของรางวัล จะส่งคืนอาร์เรย์ว่าง) | อาร์เรย์ | ใช่ |
ㄴ reward_id | รหัสรางวัล | จำนวนเต็ม | ไม่ |
ㄴ reward_type | ประเภทของรางวัล - action: รางวัลจากการกระทำ
- goal: รางวัลจากการบรรลุเป้าหมาย
| สตริง | ไม่ |
ㄴ action_type | ประเภทของการกระทำ - match: การจับคู่
- cpi: การติดตั้ง
- cpa: การบรรลุการกระทำเฉพาะ
| สตริง | ไม่ |
ㄴ count | จำนวนรางวัลที่มอบให้ | จำนวนเต็ม | ไม่ |
ㄴ max_reward | ขีดจำกัดรางวัลสูงสุด | จำนวนเต็ม | ไม่ |
ㄴ goal_progress | สถานะการบรรลุเป้าหมาย - ใช้เมื่อประเภทของรางวัลคือ 'รางวัลจากการบรรลุเป้าหมาย'
- รางวัลจะมอบให้เมื่อบรรลุเป้าหมาย (goal)
| จำนวนเต็ม | ไม่ |
ㄴ goal | จำนวนเป้าหมาย - ใช้เมื่อประเภทของรางวัลคือ 'รางวัลจากการบรรลุเป้าหมาย'
| จำนวนเต็ม | ไม่ |
ㄴ goal_achieved | จำนวนเป้าหมายที่บรรลุ - ใช้เมื่อประเภทของรางวัลคือ 'รางวัลจากการบรรลุเป้าหมาย'
| จำนวนเต็ม | ไม่ |
ตัวอย่างการตอบกลับ
{
"progress_list": [
{
"reward_id": 19,
"reward_type": "action",
"action_type": "match",
"count": 1,
"max_reward": 1,
"goal_progress": 0,
"goal_achieved": 0
},
{
"reward_id": 20,
"reward_type": "goal",
"action_type": "cpi",
"count": 2,
"max_reward": 2,
"goal_progress": 1,
"goal": 3,
"goal_achieved": 2
}
],
"result_code": 200,
"result_message": "Success"
}