นักพัฒนา

POST/v3/lnp/project/{uniqueid}/addnumbers

เพิ่มหมายเลขในโครงการย้ายค่ายเบอร์เดิมที่มีอยู่

เพิ่มแถวหมายเลข แล้วตรวจสอบข้อมูลโครงการให้ตรงกันก่อนลองส่งคำขอที่ยังไม่ทราบผลแน่ชัดอีกครั้ง

ในหน้านี้
  1. การเข้าถึงบัญชีและโครงการ
  2. เตรียมเพิ่มหมายเลข
  3. คำขอ POST
  4. ผลลัพธ์ที่รายงาน
  5. ตรวจสอบข้อมูลให้ตรงกันก่อนลองอีกครั้ง
  6. ข้อผิดพลาดของระบบรุ่นเก่า
  7. ขอบเขตการเรียกเก็บเงินและการย้ายค่าย

การเข้าถึงบัญชีและโครงการ

ใช้บัญชี API ที่เปิดใช้งานแล้วผ่าน HTTPS จากที่อยู่ IP ที่ได้รับอนุญาต โครงการต้องเป็นของบัญชีนั้นและต้องยังไม่ถูกลบ ใช้รหัสเฉพาะของโครงการจากขั้นตอนการสั่งย้ายค่ายเบอร์เดิม ห้ามใช้รหัสตัวเลขในฐานข้อมูลหรือหมายเลขโทรศัพท์ เข้ารหัสรหัสโครงการตามรูปแบบ URL เมื่อสร้างคำขอ

เตรียมเพิ่มหมายเลข

การดำเนินการนี้เปลี่ยนแปลงโครงการย้ายค่ายเบอร์เดิมที่มีอยู่ ให้ยืนยันหมายเลขและการอนุญาตจากลูกค้าผ่านขั้นตอนการสั่งย้ายค่ายเบอร์เดิมของคุณก่อน จัดรูปแบบแต่ละหมายเลขเป็นตัวเลขระหว่างประเทศแบบครบถ้วน ลบหมายเลขซ้ำด้วยตนเอง และตรวจสอบรายการหมายเลขที่มีอยู่ในโครงการ ห้ามใช้จุดปลายทางนี้เพื่อทดสอบหมายเลขใด ๆ โดยพลการ

พอร์ทัลปัจจุบันตรวจสอบความถูกต้องและปรับรูปแบบหมายเลขให้เป็นมาตรฐานก่อนเรียกเส้นทางนี้ การเรียกจุดปลายทางรุ่นเก่าโดยตรงไม่มีมาตรการป้องกันเช่นเดียวกัน โดยจะตัดช่องว่างหัวท้ายของข้อมูลเข้า แต่ไม่ตรวจสอบรูปแบบหมายเลขโทรศัพท์ รหัสประเทศ หมายเลขซ้ำ หรือสถานะขั้นตอนการทำงานของโครงการ

คำขอ POST

สร้างไฟล์ในเครื่องชื่อ numbers.json โดยใช้โครงสร้างต่อไปนี้ หมายเลขเหล่านี้เป็นหมายเลขสมมติ ให้แทนที่ด้วยหมายเลขที่ได้รับอนุญาตสำหรับโครงการที่เลือก

{
  "numbers": [
    "12025550123",
    "12025550124"
  ],
  "isocode": "US"
}
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header "Content-Type: application/json" \
  --data-binary @numbers.json \
  "https://api.multitel.net/v3/lnp/project/$PROJECT_ID/addnumbers"
ฟิลด์คำขอเพิ่มหมายเลข
ฟิลด์ความหมาย
numbersต้องระบุอาร์เรย์ที่ไม่ว่างของสตริงหมายเลข หรือสตริงที่มีหนึ่งหมายเลขต่อหนึ่งบรรทัด รายการว่างจะถูกละทิ้งและช่องว่างหัวท้ายจะถูกลบ ข้อความที่คั่นด้วยจุลภาคจะไม่ถูกแยกเป็นหมายเลขแต่ละรายการ
isocodeรหัสประเทศสำหรับแถวที่เพิ่ม ซึ่งไม่จำเป็นต้องระบุ หากไม่ได้ระบุหรือเป็นค่าว่าง จะใช้ตำแหน่งที่ตั้งของโครงการ ตัวจัดการจะตัดช่องว่างหัวท้าย แต่ไม่แปลงค่าที่ระบุเป็นตัวพิมพ์ใหญ่หรือตรวจสอบความถูกต้อง คุณต้องระบุรหัสประเทศที่ถูกต้องด้วยตัวพิมพ์ใหญ่เอง

ตัวอย่างนี้ใช้ POST ร่วมกับ application/json ระบบยังอ่านข้อมูลแบบฟอร์มที่ส่งด้วย POST ด้วย เมธอดนี้ไม่ได้กำหนดคีย์ป้องกันผลซ้ำเมื่อส่งคำขอเดิมอีกครั้ง หรือข้อกำหนดขนาดชุดข้อมูลที่ปลอดภัยเฉพาะสำหรับจุดปลายทางนี้ ให้ตรวจสอบข้อมูลให้ตรงกันเป็นชุดที่จัดการได้ แทนการอาศัยขีดจำกัดที่คาดเดาเอง

ผลลัพธ์ที่รายงาน

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

{
  "status": {
    "code": 200,
    "msg": "Success add numbers"
  },
  "response": {
    "uniqueid": "PROJECT_EXAMPLE",
    "count": 2,
    "numbers": [
      {
        "id": 21,
        "number": "12025550123",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      },
      {
        "id": 22,
        "number": "12025550124",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      }
    ]
  }
}

การตอบกลับระบุสถานะ Pending ให้รายการที่พยายามเพิ่ม โดยไม่ได้ตรวจสอบผลการแทรกข้อมูลแต่ละครั้งในฐานข้อมูลก่อนรายงาน ดังนั้นจำนวนหรือรหัสที่ส่งกลับเพียงอย่างเดียวจึงไม่ใช่หลักฐานว่าบันทึกทุกแถวไว้อย่างถาวรแล้ว รายการที่เพิ่มซึ่งมีสถานะ Pending ไม่ได้หมายความว่าผู้ให้บริการเครือข่ายยอมรับแล้ว กำหนดวันย้ายค่ายแล้ว หรือเปิดใช้งานเสร็จแล้ว

ตรวจสอบข้อมูลให้ตรงกันก่อนลองอีกครั้ง

  1. อ่านรายการหมายเลขของโครงการก่อนเพิ่มหมายเลข และเก็บรายการที่ตั้งใจจะเพิ่มไว้ในบันทึกคำขอของคุณเอง
  2. ส่งคำขอเพิ่มหมายเลขเพียงครั้งเดียว
  3. อ่านรายการหมายเลขของโครงการอีกครั้งและเปรียบเทียบหมายเลขที่ตั้งใจจะเพิ่มทุกรายการ ตรวจสอบหมายเลขซ้ำและสถานะของแต่ละหมายเลข
  4. หากคำขอหมดเวลารอ ส่งข้อผิดพลาดกลับมา หรือรายงานผลที่ไม่ชัดเจน ให้อ่านข้อมูลกลับมาตรวจสอบก่อนลองอีกครั้ง บางรายการอาจถูกเพิ่มไว้แล้ว
  5. แก้ไขแถวที่ขาดหายหรือซ้ำผ่านขั้นตอนการสั่งย้ายค่ายเบอร์เดิมหรือฝ่ายสนับสนุน แทนการส่งคำขอทั้งหมดซ้ำโดยไม่ตรวจสอบ

ตัวจัดการแทรกรายการทีละรายการโดยไม่มีธุรกรรมหรือการป้องกันข้อมูลซ้ำ หากการทำงานหยุดชะงัก ข้อมูลที่เขียนไปก่อนหน้านั้นอาจยังคงอยู่ การแทรกที่ล้มเหลวและคืนค่า false อาจยังถูกรวมในจำนวนที่รายงาน การส่งคำขอซ้ำอาจเพิ่มแถวซ้ำ ตัวจัดการเองไม่ได้บันทึกเหตุการณ์หรือดำเนินการย้ายค่ายกับผู้ให้บริการเครือข่ายให้เสร็จสมบูรณ์

ข้อผิดพลาดของระบบรุ่นเก่า

เมธอดอื่นที่ไม่ใช่ POST จะคืนรหัส API 403 โครงการที่ไม่มีอยู่ ถูกลบ หรือไม่ได้เป็นของบัญชีนั้นจะคืนรหัส API 404 ข้อมูลหมายเลขเข้าที่ว่างจะคืนรหัส API 404 เช่นกัน ต้องเป็นไปตามข้อกำหนดการยืนยันตัวตนและข้อจำกัด IP ต้นทาง รหัสของระบบรุ่นเก่าเหล่านี้ไม่ได้ยืนยันว่าไม่มีการแทรกข้อมูลเกิดขึ้นก่อนหน้านั้นหลังจากเริ่มประมวลผล

ขอบเขตการเรียกเก็บเงินและการย้ายค่าย

ตัวจัดการที่ตรวจทานแล้วแทรกแถวหมายเลขของโครงการ และไม่มีการหักเงินจากบัญชีโดยตรงหรือส่งคำขอไปยังผู้ให้บริการเครือข่าย ทั้งนี้ไม่ได้ทำให้บริการย้ายค่ายเบอร์เดิมโดยรวมไม่มีค่าใช้จ่าย หรือทำให้ค่าธรรมเนียมการย้ายค่ายที่ตกลงกันไว้เป็นอันยกเลิก ให้ดำเนินการตามข้อกำหนดด้านการอนุญาต เอกสาร และการตรวจทานของโครงการให้ครบถ้วนก่อนคาดหวังว่าจะมีการย้ายค่าย