การเข้าถึงบัญชีและโครงการ
ใช้บัญชี API ที่เปิดใช้งานแล้วผ่าน HTTPS จากที่อยู่ IP ที่ได้รับอนุญาต โครงการต้องเป็นของบัญชีนั้นและต้องยังไม่ถูกลบ ใช้รหัสเฉพาะของโครงการจากขั้นตอนการสั่งย้ายค่ายเบอร์เดิม ไม่ใช่รหัสตัวเลขในฐานข้อมูลหรือหมายเลขโทรศัพท์ เข้ารหัสรหัสโครงการตามรูปแบบ URL เมื่อสร้างคำขอ
คำขอ
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/v3/lnp/project/$PROJECT_ID"จัดการผลตอบกลับนี้เป็นข้อมูลลับ
ผลตอบกลับฉบับเต็มมีข้อมูลการเรียกเก็บเงินของผู้ให้บริการเดิมที่ย้ายออก ซึ่งรวมถึงค่าที่จัดเก็บไว้ของ billing_pin, บัญชีเรียกเก็บเงิน หมายเลขโทรศัพท์ ที่อยู่ บริษัท และรายละเอียดของผู้ติดต่อที่ได้รับมอบอำนาจ API ไม่ปกปิดข้อมูลในฟิลด์เหล่านี้ ขอเฉพาะสถานะหรือรายการหมายเลขเมื่อขั้นตอนงานของคุณต้องการเพียงข้อมูลเหล่านั้น อย่านำผลตอบกลับรายละเอียดฉบับเต็มไปเก็บในพื้นที่จัดเก็บของเบราว์เซอร์ ระบบวิเคราะห์ บันทึกสาธารณะ หรือภาพหน้าจอสำหรับการสนับสนุน และเปิดเผยเฉพาะฟิลด์ที่ลูกค้าผู้มีสิทธิ์เข้าถึงจำเป็นต้องใช้
โครงสร้างผลตอบกลับ
ตัวอย่างสมมติที่เลือกแสดงเพียงบางฟิลด์ อาจมีฟิลด์อื่นส่งกลับมาด้วย
{
"status": {
"code": 200,
"msg": "Project Detail"
},
"response": {
"project": {
"id": 11,
"uniqueid": "PROJECT_EXAMPLE",
"project_name": "Example transfer",
"location": "US",
"status": 0,
"status_str": "Pending"
},
"counts": {
"total": 0,
"pending": 0,
"in_progress": 0,
"completed": 0,
"rejected": 0
},
"numbers": [],
"events": [],
"uploads": []
}
}ตัวอย่างนี้ตั้งใจแสดงข้อมูลเพียงบางส่วน โดยละข้อมูลรับรองด้านการเรียกเก็บเงินและค่าข้อมูลติดต่อส่วนบุคคลทั้งหมด การไม่แสดงข้อมูลเหล่านี้ในตัวอย่างไม่ได้หมายความว่าผลตอบกลับจริงจะปกปิดข้อมูลเหล่านั้น
| ส่วน | เนื้อหา |
|---|---|
| project | รหัสแถวแบบตัวเลข รหัสเฉพาะของโครงการ ชื่อโครงการ สถานที่ ข้อมูลการเรียกเก็บเงิน/การติดต่อ/ที่อยู่ที่จัดเก็บไว้ เวลาที่สร้าง และสถานะที่คำนวณจากข้อมูล ฟิลด์แบบเดิมสำหรับผู้ให้บริการที่ย้ายออกสะกดว่า loosing_carrier |
| counts | จำนวนแถวข้อมูลหมายเลขทั้งหมดและตัวนับสถานะ Pending, In Progress, Completed และ Rejected |
| numbers | การเลือกและจัดรูปข้อมูลหมายเลขเหมือนกับจุดปลายทางสำหรับรายการหมายเลขของโครงการ รวมถึงความคิดเห็นของลูกค้าและค่ากำหนดเวลาที่จัดเก็บไว้ |
| events | แถวเหตุการณ์ที่จัดเก็บไว้และฟิลด์ข้อมูลเพย์โหลดแบบดิบ/ที่แยกวิเคราะห์แล้ว โดยอยู่ภายใต้ข้อจำกัดด้านการมองเห็นและรูปแบบของจุดปลายทางเหตุการณ์ |
| uploads | เมทาดาทาของเอกสาร: รหัสแบบตัวเลข, upload_type, file_name, file_extension, date_created และ download_url แบบสัมพัทธ์ URL นี้ยังคงต้องใช้การยืนยันตัวตนของบัญชี |
การตีความข้อมูลสรุปและเมทาดาทา
สถานะที่คำนวณจากข้อมูลให้ความสำคัญกับ In Progress ก่อน ตามด้วย Pending แล้วจึง Completed และ Rejected โดยใช้ Pending เป็นค่าสำรอง สถานะสรุป Completed อาจเกิดขึ้นพร้อมกับการมีหมายเลขที่ถูกปฏิเสธได้ ตรวจสอบตัวนับและสถานะของแต่ละหมายเลข แทนที่จะถือว่าทุกหมายเลขย้ายค่ายเสร็จสมบูรณ์แล้ว
ผลตอบกลับมีเมทาดาทาของเอกสาร ไม่ใช่ข้อมูลไบต์ของไฟล์ ไม่มีการแบ่งหน้าหรือเคอร์เซอร์สำหรับดึงข้อมูลส่วนที่เพิ่มขึ้น การสืบค้นรายละเอียดและรายการเป็นการอ่านข้อมูลแยกกัน ไม่ใช่ภาพข้อมูล ณ จุดเวลาเดียวที่รับประกันความสอดคล้องกันในระดับธุรกรรม ค่าวันที่ยังคงเป็นค่าที่จัดเก็บไว้ โดยไม่มีการแปลงเขตเวลาที่ระบุไว้ในเอกสาร ใช้ uniqueid สำหรับเส้นทางของโครงการ ไม่สามารถใช้รหัสโครงการแบบตัวเลขแทนกันได้
ข้อผิดพลาดและข้อจำกัด
ตรวจสอบทั้งผลตอบกลับ HTTP และ status.code/status.msg. โครงการที่ไม่มีอยู่ ถูกลบแล้ว หรือไม่ได้เป็นของบัญชีจะส่งรหัส API 404 กลับมาพร้อมข้อความว่าไม่พบโครงการ นอกจากนี้ยังมีข้อกำหนดการยืนยันตัวตนและข้อจำกัดด้าน IP ต้นทางด้วย ตัวอย่างเหล่านี้ไม่ได้ส่งคำขอจริง และผลตอบกลับที่สำเร็จไม่ได้เป็นหลักฐานว่าผู้ให้บริการยอมรับคำขอย้ายค่ายหรือดำเนินการย้ายค่ายเสร็จสมบูรณ์แล้ว
ผลที่เกิดขึ้นและขั้นตอนการทำงาน
นี่คือเส้นทางรายละเอียดมาตรฐานที่หน้าคำสั่งย้ายค่ายเบอร์เดิมของพอร์ทัลปัจจุบันใช้งาน พอร์ทัลจับคู่ฟิลด์สำหรับส่วนติดต่อผู้ใช้และเลือกจัดรูปข้อมูลสำหรับลูกค้าตามวิธีของตนเอง อย่าถือว่าผลตอบกลับดิบจาก API เหมือนกับ JSON หรือการแสดงผลของพอร์ทัลทุกประการ ตัวจัดการรายละเอียดที่ตรวจทานแล้วไม่แก้ไขโครงการ และไม่เริ่มส่งคำขอไปยังผู้ให้บริการหรือเรียกเก็บค่าบริการโดยตรง