นักพัฒนา

POST/tcr/v2/campaignBuilder

ลงทะเบียนแคมเปญ 10DLC

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

ในหน้านี้
  1. ตรวจสอบคุณสมบัติของแบรนด์ก่อนลงทะเบียนแคมเปญของแบรนด์นั้น
  2. แยกสภาพแวดล้อมทดสอบและสภาพแวดล้อมจริงออกจากกัน
  3. ส่ง JSON ของแคมเปญ
  4. ฟิลด์ของแคมเปญและข้อกำหนดแบบมีเงื่อนไข
  5. ลองคำขอเดิมที่ตั้งใจไว้ซ้ำอย่างปลอดภัย
  6. รหัสแคมเปญไม่ใช่การตั้งค่าการส่งขั้นสุดท้าย
  7. ค่าธรรมเนียมแคมเปญจริง
  8. จัดการข้อผิดพลาดการตรวจสอบและความล้มเหลวบางส่วน

ตรวจสอบคุณสมบัติของแบรนด์ก่อนลงทะเบียนแคมเปญของแบรนด์นั้น

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

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

แยกสภาพแวดล้อมทดสอบและสภาพแวดล้อมจริงออกจากกัน

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

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

ส่ง JSON ของแคมเปญ

โปรดเตรียม campaign.json ด้วยค่าที่ผ่านคุณสมบัติของคุณ R000000 หมายถึงไม่มีผู้ขายต่อ โปรดใช้ค่านี้เฉพาะเมื่อเป็นการกำหนดค่าที่ตั้งใจ สำหรับการกำหนดค่าผู้ขายต่อ MultiTEL ตามปกติ โปรดขอรับตัวระบุผู้ขายต่อ MultiTEL LLC ที่ได้รับอนุญาตจากคอลเลกชันผู้ขายต่อในบัญชีของคุณหรือจากขั้นตอนการเตรียมของพอร์ทัลแทนการฝังรหัสตัวระบุของผู้อื่นไว้โดยตรง

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  'https://api.multitel.net/tcr/v2/reseller?companyName=MultiTEL%20LLC&recordsPerPage=500'

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

{
  "brandId": "B123ABC",
  "channelId": "10DLC",
  "usecase": "TRIAL",
  "subUsecases": [],
  "resellerId": "R000000",
  "description": "Trial account notices requested by users of the example application.",
  "messageFlow": "Test users explicitly select an unchecked consent box before requesting these trial notices.",
  "sample1": "Example application: your requested account notice is available. Reply STOP to stop notices.",
  "subscriberOptin": true,
  "optinKeywords": "START",
  "optinMessage": "You are subscribed to the example application's requested account notices.",
  "subscriberOptout": true,
  "optoutKeywords": "STOP",
  "optoutMessage": "You will no longer receive the example application's account notices.",
  "subscriberHelp": true,
  "helpKeywords": "HELP",
  "helpMessage": "For help with example account notices, contact support@example.invalid.",
  "embeddedLink": false,
  "embeddedPhone": false,
  "numberPool": false,
  "ageGated": false,
  "directLending": false,
  "termsAndConditions": true,
  "autoRenewal": false,
  "mnoIds": [],
  "referenceId": "your-trial-reference"
}

โปรดตั้งค่า termsAndConditions เป็น true เฉพาะหลังจากผู้มีอำนาจได้ตรวจสอบและยอมรับข้อกำหนดที่เกี่ยวข้องแล้ว ตัวอย่างไม่ใช่ความยินยอมแทนคุณ โปรดใช้ค่าบูลีน JSON สำหรับแฟล็ก ไม่ใช่สตริงในเครื่องหมายคำพูด

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $IDEMPOTENCY_KEY" \
  --data-binary @campaign.json \
  'https://api.multitel.net/tcr/v2/campaignBuilder'

ฟิลด์ของแคมเปญและข้อกำหนดแบบมีเงื่อนไข

คำขอแคมเปญ 10DLC
ฟิลด์สิ่งที่ต้องระบุ
brandId, channelId, usecaseแบรนด์ที่คุณเป็นเจ้าของ ช่องทาง 10DLC และรหัสกรณีการใช้งานปัจจุบันที่มีสิทธิ์ โปรดใช้รหัสจากผลการตรวจสอบคุณสมบัติ ไม่ใช่ป้ายชื่อที่แปลแล้ว
subUsecasesอาร์เรย์ของรหัสกรณีการใช้งานย่อยที่มีสิทธิ์ โปรดเคารพจำนวนขั้นต่ำและขั้นสูงสุดของผลการตรวจสอบคุณสมบัติที่เลือก
resellerIdตัวระบุผู้ขายต่อที่ได้รับอนุญาต เส้นทางที่เป็นของบัญชีจะยอมรับผู้ขายต่อที่เป็นเจ้าของ ผู้ขายต่อแบบใช้ร่วมกันที่กำหนดค่าไว้ หรือค่าที่ตั้งใจให้ไม่มีผู้ขายต่อ ผู้ขายต่อที่ไม่เกี่ยวข้องจะถูกปฏิเสธ
description, messageFlowโปรดอธิบายวัตถุประสงค์จริงและวิธีเก็บความยินยอม แต่ละฟิลด์ควรมี 40–4096 อักขระ โปรดระบุการกระทำ แบบฟอร์ม หรือกระบวนการจริงของผู้ใช้ อย่าสร้างความยินยอมที่แอปพลิเคชันของคุณไม่ได้เก็บขึ้นมา
sample1 … sample5ข้อความตัวอย่าง โดยปกติแต่ละข้อความยาว 20–1024 อักขระ พอร์ทัลกำหนดให้มีอย่างน้อยหนึ่งข้อความ เครือข่ายที่มีสิทธิ์อาจกำหนดให้มีมากกว่านั้น โปรดระบุจำนวนตามที่ผลการตรวจสอบคุณสมบัติปัจจุบันกำหนด
subscriberOptin, subscriberOptout, subscriberHelpโปรดประกาศโฟลว์ผู้รับที่รองรับโดยใช้ชื่อฟิลด์ที่ถูกต้องเหล่านี้ เมื่อเปิดใช้งานโฟลว์แล้ว โปรดระบุฟิลด์คำสำคัญและข้อความของโฟลว์นั้น ข้อกำหนดของเครือข่ายอาจทำให้บางโฟลว์เป็นข้อบังคับ
optinKeywords, optoutKeywords, helpKeywordsคำสำคัญจริงที่ได้รับการยอมรับ ยาวสูงสุด 255 อักขระ คำสำคัญเหล่านี้ต้องตรงกับพฤติกรรมของแอปพลิเคชันที่รับข้อความ
optinMessage, optoutMessage, helpMessageข้อความที่เกี่ยวข้อง กฎของฟิลด์ที่เผยแพร่ปัจจุบันระบุ 20–1024 อักขระ โปรดระบุพฤติกรรมการช่วยเหลือและการยกเลิกจริง
embeddedLink, embeddedPhone, embeddedLinkSampleโปรดประกาศลิงก์หรือหมายเลขโทรศัพท์ที่ฝังอยู่อย่างตรงไปตรงมา เครือข่ายที่มีสิทธิ์อยู่แล้วอาจไม่อนุญาตสิ่งเหล่านี้ ตัวอย่างลิงก์อนุญาตสูงสุด 255 อักขระ
mnoIdsอาร์เรย์เสริมของรหัสเครือข่ายตัวเลขที่มีสิทธิ์จากผลการตรวจสอบคุณสมบัติ อย่าคิดว่าเครือข่ายทุกแห่งรองรับกรณีการใช้งานที่เลือก
numberPool, ageGated, directLendingลักษณะแคมเปญที่เกี่ยวข้องในรูปแบบค่าบูลีน JSON โปรดเลือกตามบริการจริง
privacyPolicyLink, termsAndConditionsLinkURL นโยบายสาธารณะและข้อกำหนดที่เกี่ยวข้องของคุณเมื่อเกี่ยวข้อง แต่ละ URL ยาวสูงสุด 2048 อักขระ URL เหล่านี้ต้องอธิบายบริการรับส่งข้อความจริง
termsAndConditionsการยอมรับอย่างชัดแจ้งต่อข้อกำหนดแคมเปญที่เกี่ยวข้อง พอร์ทัลกำหนดให้มี true และวิซาร์ดของพอร์ทัลยังเก็บการยืนยันรายบุคคลปัจจุบันด้วย
autoRenewalระบุว่าแคมเปญจะต่ออายุหรือไม่ ค่าเริ่มต้นคือ true การปิดการต่ออายุไม่ได้ลบข้อผูกพันขั้นต่ำที่เกี่ยวข้องกับแคมเปญจริงอยู่แล้ว
referenceId, tagข้อมูลอ้างอิงแคมเปญของคุณ ยาวสูงสุด 50 อักขระ และแท็กเสริม referenceId ไม่ใช่ส่วนหัว Idempotency-Key

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

ลองคำขอเดิมที่ตั้งใจไว้ซ้ำอย่างปลอดภัย

โปรดใช้ Idempotency-Key หนึ่งค่าสำหรับการสร้างที่ตั้งใจนี้ คีย์มีความยาว 1–128 อักขระ ASCII ที่พิมพ์ได้โดยไม่มีช่องว่างและมีขอบเขตในบัญชีเจ้าของ เมื่อลองซ้ำ โปรดคงวิธี HTTP เส้นทาง สตริงการค้นหา และไบต์เนื้อความที่ถูกต้องไว้ไม่เปลี่ยนแปลง ไฟล์ JSON ที่จัดรูปแบบใหม่จะขัดแย้งแม้ว่าค่าของไฟล์จะเท่ากัน

คำขอซ้ำที่กำลังดำเนินการอาจส่งคืน HTTP 409 พร้อม Retry-After คำขอที่เสร็จแล้วอาจเล่นการตอบสนองที่จัดเก็บไว้ซ้ำ ข้อผิดพลาดที่แคชไว้ไม่ได้พิสูจน์ว่ารีจิสทรีไม่ได้สร้างอะไร โปรดบันทึก campaignId, requestId และส่วนหัวสหสัมพันธ์ใด ๆ ตรวจสอบแคมเปญที่มีอยู่และตรวจสอบสถานะจริงและแก้ไขข้อมูลที่ไม่ตรงกันหลังจากเกิดความล้มเหลวบางส่วนก่อนพิจารณาใช้คีย์ใหม่

รหัสแคมเปญไม่ใช่การตั้งค่าการส่งขั้นสุดท้าย

การตอบสนองใช้สถานะ HTTP และ JSON โดยตรง เมื่อสร้างสำเร็จ โปรดเก็บ campaignId ไว้อ่านสถานะปัจจุบัน:

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  "https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"

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

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

ค่าธรรมเนียมแคมเปญจริง

ค่าธรรมเนียมแคมเปญรายเดือนที่กำหนดค่าไว้ปัจจุบัน
กรณีการใช้งานค่าธรรมเนียมรายเดือน
LOW_VOLUME, UCAAS_LOW$1.67
SOLE_PROPRIETOR$2.23
CHARITY$3.34
EMERGENCY$5.56
AGENTS_FRANCHISES$33.34
กรณีการใช้งานสำรองอื่น ๆ ที่กำหนดค่าไว้$11.12

จำนวนขายปลีกเหล่านี้ตรวจสอบกับค่ากำหนดของพอร์ทัลปัจจุบันแล้วเมื่อวันที่ 24 ตุลาคม 2026 โปรดยืนยันกรณีการใช้งานที่มีสิทธิ์ปัจจุบันและราคาที่แสดงก่อนส่งคำขอจริง monthlyFee ในการตอบสนองการตรวจสอบคุณสมบัติของรีจิสทรีไม่ใช่ราคาขายปลีก MultiTEL ของคุณโดยอัตโนมัติ

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

จัดการข้อผิดพลาดการตรวจสอบและความล้มเหลวบางส่วน

โปรดอ่าน status HTTP และ JSON ที่ส่งคืนมา ข้อผิดพลาดการตรวจสอบอาจเป็นอาร์เรย์ของออบเจกต์ code/description ส่วนข้อผิดพลาดภายในอาจเป็นออบเจกต์ที่มี message, status และสำหรับข้อผิดพลาดการประมวลผลบางอย่างมี requestId

ความล้มเหลวของแคมเปญ
ผลลัพธ์ HTTPการดำเนินการถัดไป
400โปรดแก้ไขฟิลด์เฉพาะหรือคีย์ป้องกันคำขอซ้ำ โปรดอ่านผลการตรวจสอบคุณสมบัติปัจจุบัน จำนวนตัวอย่างที่กำหนด และข้อกำหนดโฟลว์ผู้รับอีกครั้ง
401, 403 หรือ 404โปรดตรวจสอบข้อมูลรับรอง API และ IP ต้นทางที่อนุญาต จากนั้นตรวจสอบความเป็นเจ้าของและสิทธิ์ของแบรนด์/ผู้ขายต่อ อย่าใช้ตัวระบุจากบัญชีอื่น
402โปรดตรวจสอบเงินทุนสำหรับการใช้งานจริงและสิทธิ์การซื้อก่อนลองการสร้างที่ตั้งใจเดิมซ้ำ
409โปรดแยกการเล่นซ้ำของคำขอที่กำลังดำเนินการออกจากคำขอที่เปลี่ยนแปลงแต่ใช้คีย์เดิม โปรดเก็บแคมเปญที่มีอยู่และรายละเอียดคำขอไว้เมื่อกระทบยอด
429 หรือตัวจำกัดไม่พร้อมใช้งานโปรดปฏิบัติตาม Retry-After เมื่อมีส่วนหัวนี้และคงคีย์เดิมกับคำขอที่ถูกต้องไว้
500 หรือ 502การสร้างอาจเกิดขึ้นแล้ว โปรดบันทึก campaignId และ requestId ใด ๆ ตรวจสอบแคมเปญที่มีอยู่ แล้วดำเนินการต่อหรือกระทบยอดการเปิดใช้งานแทนการสร้างรายการซ้ำ