การส่งข้อความแบบกำหนดเอง

หากคุณได้สร้างเนื้อหาแม่แบบที่กำหนดเองบนแพลตฟอร์ม OTP คุณสามารถเรียกใช้ API นี้เพื่อส่งเนื้อหาข้อความที่กำหนดเองได้

จุดสิ้นสุดของ API

POST https://otp.api.engagelab.cc/v1/custom-messages

การตรวจสอบสิทธิ์

ใช้ HTTP Basic Authentication สำหรับการตรวจสอบสิทธิ์ เพิ่ม Authorization ใน HTTP Header:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

อัลกอริทึมการสร้าง base64_auth_string ด้านบนคือ: base64(dev_key:dev_secret)

รูปแบบคำขอ

หัวข้อคำขอ

POST /v1/custom-messages HTTP/1.1 Content-Type: application/json Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              POST /v1/custom-messages  HTTP/1.1  
Content-Type: application/json  
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

เนื้อหาคำขอ

{ "to": "+8618701235678", "template":{ "id":"test-template-1", "params": { "code": "codevalue", "var1":"value1" } } }
              
              {
    "to": "+8618701235678", 
    "template":{
      "id":"test-template-1",
      "params": {
        "code": "codevalue",
        "var1":"value1"
        }
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

พารามิเตอร์คำขอ

วัตถุคำขอแสดงในรูปแบบ JSON ดังนั้นหัวข้อคำขอต้องรวม Content-Type: application/json

พารามิเตอร์ ประเภท จำเป็น คำอธิบาย
to String จำเป็น ผู้รับเป้าหมาย หมายเลขโทรศัพท์หรือที่อยู่อีเมล เช่น +8613800138000, support@engagelab.com
template JSON Object จำเป็น ข้อมูลแม่แบบ พารามิเตอร์รองแสดงด้านล่าง
|_ id String จำเป็น รหัสแม่แบบ
|_ params JSON Object ไม่จำเป็น พารามิเตอร์แม่แบบ
_ |_ code String ไม่จำเป็น จำเป็นเมื่อประเภทแม่แบบคือรหัสยืนยัน
_ |_ var String ไม่จำเป็น คีย์ค่าตัวแปรแม่แบบที่กำหนดเอง
หากคุณได้กำหนดตัวแปรเมื่อสร้างแม่แบบ ให้ส่งค่าของตัวแปรเหล่านั้นที่นี่ หากไม่ได้ส่ง คีย์ตัวแปรจะถูกส่งโดยตรง เช่น {{var1}}

คำอธิบายสำหรับ params

  1. สำหรับตัวแปรแม่แบบที่ตั้งไว้ล่วงหน้า เช่น {{brand_name}}, {{ttl}}, {{pwa_url}} เป็นต้น ไม่จำเป็นต้องส่งค่า ระบบจะเปลี่ยนเป็นเนื้อหาที่ระบุระหว่างการสร้างแม่แบบโดยอัตโนมัติ
  2. หากประเภทแม่แบบคือรหัสยืนยัน ต้องส่งตัวแปร {{code}} มิฉะนั้นจะเกิดข้อผิดพลาด
  3. สำหรับฟิลด์ตัวแปรที่กำหนดเองในเนื้อหาแม่แบบ ให้ส่งค่าผ่าน params ตัวอย่างเช่น หากเนื้อหาแม่แบบคือ Hi {{name}}, your verify code is {{code}} คุณต้องส่งพารามิเตอร์เช่น params:{"name":"Bob"}

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

1. การส่งรหัสยืนยันที่กำหนดเอง:

{ "to": "+8618701235678", "template":{ "id":"code-template", "params": { "code": "123456" } } }
              
              {
    "to": "+8618701235678", 
    "template":{
      "id":"code-template",
      "params": {
        "code": "123456"        
        }
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

2. การส่งเนื้อหาการแจ้งเตือนที่กำหนดเอง:

{ "to": "+8618701235678", "template":{ "id":"notification-template", "params": { "order":"123456" } } }
              
              {
    "to": "+8618701235678", 
    "template":{
      "id":"notification-template",
      "params": {       
        "order":"123456"
        }
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

3. การส่งเนื้อหาการตลาดที่กำหนดเอง:

{ "to": "+8618701235678", "template":{ "id":"marketing-template", "params": { "name":"EngageLab", "promotion":"30%" } } }
              
              {
    "to": "+8618701235678", 
    "template":{
      "id":"marketing-template",
      "params": {       
        "name":"EngageLab",
        "promotion":"30%"
        }
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

พารามิเตอร์การตอบกลับ

การตอบกลับสำเร็จ

ฟิลด์ ประเภท จำเป็น คำอธิบาย
message_id String จำเป็น รหัสข้อความ ระบุข้อความอย่างเฉพาะเจาะจง
send_channel String จำเป็น ระบุช่องทางการส่งปัจจุบัน ค่าได้แก่ whatsapp/sms/email/voice
{ "message_id": "1725407449772531712", "send_channel": "sms" }
              
              {
    "message_id": "1725407449772531712",
    "send_channel": "sms"
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

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

การตอบกลับล้มเหลว

รหัสสถานะ HTTP เป็น 4xx หรือ 5xx และเนื้อหาการตอบกลับประกอบด้วยฟิลด์ดังต่อไปนี้:

ฟิลด์ ประเภท จำเป็น คำอธิบาย
code int จำเป็น รหัสข้อผิดพลาด ดูรายละเอียดใน Error Codes
message String จำเป็น รายละเอียดข้อผิดพลาด
{ "code": 5001, "message": "sms send fail" }
              
              {
    "code": 5001,
    "message": "sms send fail"
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

รหัสข้อผิดพลาด

รหัสข้อผิดพลาด รหัส HTTP คำอธิบาย
1000 500 ข้อผิดพลาดภายใน
2001 401 การตรวจสอบสิทธิ์ล้มเหลว โทเค็นที่ให้มาไม่ถูกต้อง
2002 401 การตรวจสอบสิทธิ์ล้มเหลว โทเค็นหมดอายุหรือถูกปิดใช้งาน
2004 403 ไม่มีสิทธิ์เรียกใช้ API นี้
3001 400 รูปแบบพารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าเนื้อหา JSON ตรงตามรูปแบบพารามิเตอร์หรือไม่
3002 400 พารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าพารามิเตอร์ตรงตามข้อกำหนดหรือไม่
3003 400 พารามิเตอร์คำขอไม่ถูกต้อง การตรวจสอบทางธุรกิจล้มเหลว อ้างอิงคำอธิบายในฟิลด์ข้อความ
3004 400 เกินขีดจำกัดความถี่ ไม่สามารถส่งซ้ำไปยังผู้ใช้เป้าหมายเดียวกันภายในระยะเวลาที่รหัสยืนยันยังคงใช้ได้สำหรับแม่แบบเดียวกัน
4001 400 ไม่พบทรัพยากร เช่น ใช้แม่แบบที่ไม่มีอยู่สำหรับการส่งข้อความแม่แบบ
5001 400 การส่งข้อความรหัสยืนยันล้มเหลว อ้างอิงคำอธิบายในฟิลด์ข้อความ
icon
ติดต่อฝ่ายขาย
banner-pic
ฉลาดขึ้นและแม่นยำยิ่งขึ้น!
ยกระดับประสิทธิภาพทางการตลาดด้วย Marketing Automation
เริ่มกันเลย