อินเทอร์เฟซ API แม่แบบ

สร้างเทมเพลต

Endpoint

POST https://otp.api.engagelab.cc/v1/template-configs

การยืนยันตัวตน

ใช้ HTTP Basic Authentication โดยเพิ่ม Authorization ใน HTTP Header:

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

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

base64_auth_string ถูกสร้างขึ้นดังนี้: base64(dev_key:dev_secret)

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

Header ของคำขอ

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

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

เนื้อหาของคำขอ

{ "template_id": "test-template-1", // รหัสเทมเพลตที่กำหนดเอง ต้องไม่ซ้ำในแอปพลิเคชัน "description": "Test Template 1", // คำอธิบายของเทมเพลต "send_channel_strategy": "whatsapp|sms", // กลยุทธ์การส่งเทมเพลต รองรับ 4 ประเภท: whatsapp/sms/voice/email ใช้ | เพื่อระบุกลยุทธ์สำรอง "brand_name": "Brand Name", // ชื่อแบรนด์ ใช้ในลายเซ็นสำหรับบางประเทศ/ภูมิภาคในเนื้อหาเทมเพลต (เช่น จำเป็นสำหรับช่อง SMS ในบางประเทศ/ภูมิภาค) "verify_code_config": { // การตั้งค่ารหัสยืนยัน จำเป็นเมื่อเทมเพลตรวมถึงประเภทการยืนยัน "verify_code_type": 1, // ประเภทของรหัสยืนยัน ช่วง [1,7] "verify_code_len": 6, // ความยาวของรหัสยืนยัน ช่วง [4,10] "verify_code_ttl": 1 // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เฉพาะ 1, 5 หรือ 10 }, "whatsapp_config": { // การตั้งค่ากลยุทธ์ WhatsApp มีผลเมื่อกลยุทธ์การส่งรวมถึง WhatsApp "template_type": 1, // ประเภทเทมเพลต WhatsApp ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1 "template_default_config": { // การตั้งค่าเทมเพลตเริ่มต้น WhatsApp มีผลสำหรับประเภทเทมเพลตเริ่มต้น "contain_security": false, // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่ "contain_expire": false // รวมถึงเนื้อหาหมดอายุหรือไม่ } }, "sms_config": { // การตั้งค่ากลยุทธ์ SMS มีผลเมื่อกลยุทธ์การส่งรวมถึง SMS "template_type": 2, // ประเภทเทมเพลต SMS ค่า: 1-เทมเพลตเริ่มต้น/2-เทมเพลตที่กำหนดเอง "template_default_config": { // การตั้งค่าเทมเพลตเริ่มต้น SMS มีผลสำหรับประเภทเทมเพลตเริ่มต้น "contain_security": false, // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่ "contain_expire": false // รวมถึงเนื้อหาหมดอายุหรือไม่ }, "template_custom_config": { // การตั้งค่าเทมเพลตที่กำหนดเอง SMS มีผลสำหรับประเภทเทมเพลตที่กำหนดเอง "custom_sub_type": "authentication", // ประเภทเทมเพลตที่กำหนดเอง ค่า: authentication-รหัสยืนยัน/marketing-การตลาด/utility-การแจ้งเตือน "custom_content": "xxx", // เนื้อหาเทมเพลตที่กำหนดเอง หมายเหตุ: สำหรับประเภท authentication ต้องรวมตัวแปร {{code}} "custom_country_codes": "HK,PH" // ประเทศ/ภูมิภาคเป้าหมายสำหรับเทมเพลตที่กำหนดเอง ใช้เป็นข้อมูลอ้างอิงระหว่างการตรวจสอบเทมเพลต กรอกตามต้องการ มิฉะนั้นอาจส่งผลต่อการส่ง } }, "voice_config": { // การตั้งค่ากลยุทธ์เสียง มีผลเมื่อกลยุทธ์การส่งรวมถึงเสียง "template_type": 1, // ประเภทเทมเพลตเสียง ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1 "template_default_config": { // การตั้งค่าเทมเพลตเริ่มต้นเสียง มีผลสำหรับประเภทเทมเพลตเริ่มต้น "contain_security": false, // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่ "contain_expire": false // รวมถึงเนื้อหาหมดอายุหรือไม่ } }, "email_config": { // การตั้งค่ากลยุทธ์อีเมล มีผลเมื่อกลยุทธ์การส่งรวมถึงอีเมล "template_name": "Email Template Name", // ชื่อเทมเพลตอีเมล "template_custom_configs": [{ // การตั้งค่าเทมเพลตที่กำหนดเองอีเมล หมายเหตุเป็นอาร์เรย์ของอ็อบเจ็กต์ แยกตามภาษา "language": "default", // ภาษา ค่า default เป็นค่าเริ่มต้น เนื้อหาเทมเพลตสามารถจับคู่ตามพารามิเตอร์ภาษาในระหว่างการส่ง "pre_from_name": "test", // ชื่อผู้ส่งที่ตั้งไว้ล่วงหน้า "pre_from_mail": "test@test.com", // อีเมลผู้ส่งที่ตั้งไว้ล่วงหน้า "pre_subject": "test", // หัวข้ออีเมลที่ตั้งไว้ล่วงหน้า "template_content": "เนื้อหาเทมเพลตอีเมลที่ตั้งไว้ล่วงหน้า จำเป็น ตัวแปรที่กำหนดเองเช่น {{self}} รหัสยืนยันคือ {{code}}", // เนื้อหาอีเมล รองรับ HTML ตัวแปรต้องอยู่ในวงเล็บปีกกา {{ }} "pre_param_map": { // ค่าเริ่มต้นสำหรับตัวแปรในเนื้อหาอีเมล หากค่าไม่ถูกระบุระหว่างการส่ง ค่าที่ตั้งไว้ล่วงหน้าจะมาแทนที่ตัวแปร ประกาศเป็นคู่คีย์-ค่า ค่าเป็นสตริง "self": "นี่คือค่าที่ตั้งไว้ล่วงหน้าสำหรับตัวแปร self" } }] }, "pwa_config": { // การตั้งค่าที่เกี่ยวข้องกับ PWA เป็นตัวเลือก "pwa_platform": "xx", // แพลตฟอร์ม PWA ที่ใช้ สำหรับค่าที่เฉพาะเจาะจง ติดต่อฝ่ายสนับสนุนทางเทคนิค "pwa_code": "xx" // รหัสในแพลตฟอร์ม PWA ที่ใช้ } }
              
              {
    "template_id": "test-template-1",       // รหัสเทมเพลตที่กำหนดเอง ต้องไม่ซ้ำในแอปพลิเคชัน
    "description": "Test Template 1",       // คำอธิบายของเทมเพลต
    "send_channel_strategy": "whatsapp|sms",    // กลยุทธ์การส่งเทมเพลต รองรับ 4 ประเภท: whatsapp/sms/voice/email ใช้ | เพื่อระบุกลยุทธ์สำรอง
    "brand_name": "Brand Name",             // ชื่อแบรนด์ ใช้ในลายเซ็นสำหรับบางประเทศ/ภูมิภาคในเนื้อหาเทมเพลต (เช่น จำเป็นสำหรับช่อง SMS ในบางประเทศ/ภูมิภาค)
    "verify_code_config": {                 // การตั้งค่ารหัสยืนยัน จำเป็นเมื่อเทมเพลตรวมถึงประเภทการยืนยัน
        "verify_code_type": 1,              // ประเภทของรหัสยืนยัน ช่วง [1,7]
        "verify_code_len": 6,               // ความยาวของรหัสยืนยัน ช่วง [4,10]
        "verify_code_ttl": 1                // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เฉพาะ 1, 5 หรือ 10
    },
    "whatsapp_config": {                    // การตั้งค่ากลยุทธ์ WhatsApp มีผลเมื่อกลยุทธ์การส่งรวมถึง WhatsApp
        "template_type": 1,                 // ประเภทเทมเพลต WhatsApp ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1
        "template_default_config": {        // การตั้งค่าเทมเพลตเริ่มต้น WhatsApp มีผลสำหรับประเภทเทมเพลตเริ่มต้น
            "contain_security": false,      // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่
            "contain_expire": false         // รวมถึงเนื้อหาหมดอายุหรือไม่
        }
    },
    "sms_config": {                         // การตั้งค่ากลยุทธ์ SMS มีผลเมื่อกลยุทธ์การส่งรวมถึง SMS
        "template_type": 2,                 // ประเภทเทมเพลต SMS ค่า: 1-เทมเพลตเริ่มต้น/2-เทมเพลตที่กำหนดเอง
        "template_default_config": {        // การตั้งค่าเทมเพลตเริ่มต้น SMS มีผลสำหรับประเภทเทมเพลตเริ่มต้น
            "contain_security": false,      // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่
            "contain_expire": false         // รวมถึงเนื้อหาหมดอายุหรือไม่
        },
        "template_custom_config": {         // การตั้งค่าเทมเพลตที่กำหนดเอง SMS มีผลสำหรับประเภทเทมเพลตที่กำหนดเอง
            "custom_sub_type": "authentication",    // ประเภทเทมเพลตที่กำหนดเอง ค่า: authentication-รหัสยืนยัน/marketing-การตลาด/utility-การแจ้งเตือน
            "custom_content": "xxx",                // เนื้อหาเทมเพลตที่กำหนดเอง หมายเหตุ: สำหรับประเภท authentication ต้องรวมตัวแปร {{code}}
            "custom_country_codes": "HK,PH"         // ประเทศ/ภูมิภาคเป้าหมายสำหรับเทมเพลตที่กำหนดเอง ใช้เป็นข้อมูลอ้างอิงระหว่างการตรวจสอบเทมเพลต กรอกตามต้องการ มิฉะนั้นอาจส่งผลต่อการส่ง
        }
    },
    "voice_config": {                       // การตั้งค่ากลยุทธ์เสียง มีผลเมื่อกลยุทธ์การส่งรวมถึงเสียง
        "template_type": 1,                 // ประเภทเทมเพลตเสียง ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1
        "template_default_config": {        // การตั้งค่าเทมเพลตเริ่มต้นเสียง มีผลสำหรับประเภทเทมเพลตเริ่มต้น
            "contain_security": false,      // รวมถึงการแจ้งเตือนความปลอดภัยหรือไม่
            "contain_expire": false         // รวมถึงเนื้อหาหมดอายุหรือไม่
        }
    },
    "email_config": {                       // การตั้งค่ากลยุทธ์อีเมล มีผลเมื่อกลยุทธ์การส่งรวมถึงอีเมล
        "template_name": "Email Template Name",     // ชื่อเทมเพลตอีเมล
        "template_custom_configs": [{       // การตั้งค่าเทมเพลตที่กำหนดเองอีเมล หมายเหตุเป็นอาร์เรย์ของอ็อบเจ็กต์ แยกตามภาษา
            "language": "default",          // ภาษา ค่า default เป็นค่าเริ่มต้น เนื้อหาเทมเพลตสามารถจับคู่ตามพารามิเตอร์ภาษาในระหว่างการส่ง
            "pre_from_name": "test",        // ชื่อผู้ส่งที่ตั้งไว้ล่วงหน้า
            "pre_from_mail": "test@test.com",   // อีเมลผู้ส่งที่ตั้งไว้ล่วงหน้า
            "pre_subject": "test",          // หัวข้ออีเมลที่ตั้งไว้ล่วงหน้า
            "template_content": "เนื้อหาเทมเพลตอีเมลที่ตั้งไว้ล่วงหน้า จำเป็น ตัวแปรที่กำหนดเองเช่น {{self}} รหัสยืนยันคือ {{code}}",    // เนื้อหาอีเมล รองรับ HTML ตัวแปรต้องอยู่ในวงเล็บปีกกา {{ }}
            "pre_param_map": {              // ค่าเริ่มต้นสำหรับตัวแปรในเนื้อหาอีเมล หากค่าไม่ถูกระบุระหว่างการส่ง ค่าที่ตั้งไว้ล่วงหน้าจะมาแทนที่ตัวแปร ประกาศเป็นคู่คีย์-ค่า ค่าเป็นสตริง
                "self": "นี่คือค่าที่ตั้งไว้ล่วงหน้าสำหรับตัวแปร self"
            }
        }]
    },
    "pwa_config": {                         // การตั้งค่าที่เกี่ยวข้องกับ PWA เป็นตัวเลือก
        "pwa_platform": "xx",               // แพลตฟอร์ม PWA ที่ใช้ สำหรับค่าที่เฉพาะเจาะจง ติดต่อฝ่ายสนับสนุนทางเทคนิค
        "pwa_code": "xx"                    // รหัสในแพลตฟอร์ม PWA ที่ใช้
    }
}

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

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

อ็อบเจ็กต์คำขอแสดงในรูปแบบ JSON ดังนั้น Header ของคำขอต้องรวม Content-Type: application/json

พารามิเตอร์ ประเภท ตัวเลือก คำอธิบาย
template_id String จำเป็น รหัสเทมเพลตที่กำหนดเอง ต้องไม่ซ้ำ จำกัดที่ 128 ตัวอักษร
description String ตัวเลือก คำอธิบายเทมเพลต จำกัดที่ 255 ตัวอักษร
send_channel_strategy String จำเป็น กลยุทธ์เทมเพลต ค่าแบบช่องเดียว: whatsapp/sms/email/voice หลายช่องใช้
brand_name String ตัวเลือก ลายเซ็นแบรนด์ แทนที่ตัวแปรลายเซ็นแบรนด์ในบางสไตล์เทมเพลตด้วยลายเซ็นแบรนด์ ความยาวจำกัดที่ 2-10 ตัวอักษร
verify_code_config Object จำเป็นตามเงื่อนไข การตั้งค่ารหัสยืนยัน จำเป็นเมื่อเทมเพลตรวมถึงประเภทการยืนยัน
verify_code_config.verify_code_type Integer จำเป็น ประเภทของรหัสยืนยัน ช่วง [1,7] 1-ตัวเลข/2-ตัวอักษรเล็ก/4-ตัวอักษรใหญ่ สามารถรวมกันได้ (เช่น 3 หมายถึงตัวเลข + ตัวอักษรเล็ก)
verify_code_config.verify_code_len Integer จำเป็น ความยาวของรหัสยืนยัน ช่วง [4,10]
verify_code_config.verify_code_ttl Integer จำเป็น ระยะเวลาความถูกต้องของรหัสยืนยัน เป็นนาที ช่วง [1,10] เมื่อกลยุทธ์รวมถึง WhatsApp ค่าได้เฉพาะ 1, 5 หรือ 10
whatsapp_config Object จำเป็นตามเงื่อนไข การตั้งค่ากลยุทธ์ WhatsApp จำเป็นเมื่อกลยุทธ์การส่งรวมถึง WhatsApp
whatsapp_config.template_type Integer จำเป็น ประเภทเทมเพลต WhatsApp ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1
whatsapp_config.template_default_config Object จำเป็นตามเงื่อนไข การตั้งค่าเทมเพลตเริ่มต้น WhatsApp จำเป็นสำหรับประเภทเทมเพลตเริ่มต้น
sms_config Object จำเป็นตามเงื่อนไข การตั้งค่ากลยุทธ์ SMS จำเป็นเมื่อกลยุทธ์การส่งรวมถึง SMS
sms_config.template_type Integer จำเป็น ประเภทเทมเพลต SMS 1-เทมเพลตเริ่มต้น/2-เทมเพลตที่กำหนดเอง
sms_config.template_default_config Object จำเป็นตามเงื่อนไข การตั้งค่าเทมเพลตเริ่มต้น SMS จำเป็นสำหรับประเภทเทมเพลตเริ่มต้น
sms_config.template_custom_config Object จำเป็นตามเงื่อนไข การตั้งค่าเทมเพลตที่กำหนดเอง SMS จำเป็นสำหรับประเภทเทมเพลตที่กำหนดเอง
sms_config.template_custom_config.custom_sub_type String จำเป็น ประเภทเทมเพลตที่กำหนดเอง authentication-รหัสยืนยัน/marketing-การตลาด/utility-การแจ้งเตือน
sms_config.template_custom_config.custom_content String จำเป็น เนื้อหาเทมเพลตที่กำหนดเอง สำหรับประเภท authentication ต้องรวมตัวแปร {{code}}
sms_config.template_custom_config.custom_country_codes String ตัวเลือก รหัสประเทศ/ภูมิภาคเป้าหมาย แยกด้วยเครื่องหมายจุลภาค ใช้เป็นข้อมูลอ้างอิงระหว่างการตรวจสอบเทมเพลต
voice_config Object จำเป็นตามเงื่อนไข การตั้งค่ากลยุทธ์เสียง จำเป็นเมื่อกลยุทธ์การส่งรวมถึงเสียง
voice_config.template_type Integer จำเป็น ประเภทเทมเพลตเสียง ปัจจุบันรองรับเฉพาะเทมเพลตเริ่มต้น ค่า 1
voice_config.template_default_config Object จำเป็นตามเงื่อนไข การตั้งค่าเทมเพลตเริ่มต้นเสียง จำเป็นสำหรับประเภทเทมเพลตเริ่มต้น
email_config Object จำเป็นตามเงื่อนไข การตั้งค่ากลยุทธ์อีเมล จำเป็นเมื่อกลยุทธ์การส่งรวมถึงอีเมล
email_config.template_name String จำเป็น ชื่อเทมเพลตอีเมล
email_config.template_custom_configs Array จำเป็นตามเงื่อนไข การตั้งค่าเทมเพลตที่กำหนดเองอีเมล จำเป็นสำหรับประเภทเทมเพลตที่กำหนดเอง รองรับการตั้งค่าหลายภาษา
email_config.template_custom_configs.language String จำเป็น ภาษา ค่า default เป็นค่าเริ่มต้น เนื้อหาเทมเพลตสามารถจับคู่ตามพารามิเตอร์ภาษาในระหว่างการส่ง
email_config.template_custom_configs.pre_from_name String ตัวเลือก ชื่อผู้ส่งที่ตั้งไว้ล่วงหน้า
email_config.template_custom_configs.pre_from_mail String จำเป็น อีเมลผู้ส่งที่ตั้งไว้ล่วงหน้า
email_config.template_custom_configs.pre_subject String จำเป็น หัวข้ออีเมลที่ตั้งไว้ล่วงหน้า
email_config.template_custom_configs.template_content String จำเป็น เนื้อหาอีเมล รองรับ HTML ตัวแปรต้องอยู่ในวงเล็บปีกกา {{ }}
email_config.template_custom_configs.pre_param_map Object ตัวเลือก ค่าเริ่มต้นสำหรับตัวแปรในเนื้อหาอีเมล ประกาศเป็นคู่คีย์-ค่า ค่าเป็นสตริง
pwa_config Object ตัวเลือก การตั้งค่าที่เกี่ยวข้องกับ PWA เป็นตัวเลือก
pwa_config.pwa_platform String ตัวเลือก แพลตฟอร์ม PWA ที่ใช้ สำหรับค่าที่เฉพาะเจาะจง ติดต่อฝ่ายสนับสนุนทางเทคนิค
pwa_config.pwa_code String ตัวเลือก รหัสในแพลตฟอร์ม PWA ที่ใช้

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

ฟิลด์ ประเภท ตัวเลือก คำอธิบาย
code Integer จำเป็น รหัสข้อผิดพลาด 0 หมายถึงสำเร็จ อื่นๆ หมายถึงล้มเหลว
message String จำเป็น รหัสยืนยันที่ต้องตรวจสอบ

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

{ "code": 0, "message": "success" }
              
              {
    "code": 0,
    "message": "success"
}

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

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

{ "code": 3003, "message": "not contains any channel config" }
              
              {
    "code": 3003,
    "message": "not contains any channel config"
}

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

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

รหัสข้อผิดพลาด HTTP Code คำอธิบาย
1000 500 ข้อผิดพลาดภายใน
2001 401 การยืนยันตัวตนล้มเหลว โทเค็นที่ให้มาไม่ถูกต้อง
2002 401 การยืนยันตัวตนล้มเหลว โทเค็นหมดอายุหรือถูกปิดใช้งาน
2004 403 ไม่มีสิทธิ์เรียกใช้ API นี้
3001 400 รูปแบบพารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าตรงกับรูปแบบ JSON หรือไม่
3002 400 พารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าตรงกับข้อกำหนดหรือไม่
3003 400 ข้อผิดพลาดระดับธุรกิจของพารามิเตอร์ ตรวจสอบฟิลด์ข้อความสำหรับรายละเอียด

ลบเทมเพลต

Endpoint

DELETE /v1/template-configs/{templateId}

การยืนยันตัวตน

ใช้ HTTP Basic Authentication โดยเพิ่ม Authorization ใน HTTP Header:

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

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

base64_auth_string ถูกสร้างขึ้นดังนี้: base64(dev_key:dev_secret)

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

Header ของคำขอ

DELETE /v1/template-configs/{templateId} HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              DELETE /v1/template-configs/{templateId}  HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

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

เนื้อหาของคำขอ

ไม่มี

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

{templateId} ใน URL แทนรหัสเทมเพลตที่จะลบ ซึ่งกำหนดโดยผู้เรียกเมื่อสร้างเทมเพลต

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

ฟิลด์ ประเภท ตัวเลือก คำอธิบาย
code Integer จำเป็น รหัสข้อผิดพลาด 0 หมายถึงสำเร็จ อื่นๆ หมายถึงล้มเหลว
message String จำเป็น รหัสยืนยันที่ต้องตรวจสอบ

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

{ "code": 0, "message": "success" }
              
              {
    "code": 0,
    "message": "success"
}

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

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

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

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

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

รหัสข้อผิดพลาด HTTP Code คำอธิบาย
1000 500 ข้อผิดพลาดภายใน
2001 401 การยืนยันตัวตนล้มเหลว โทเค็นที่ให้มาไม่ถูกต้อง
2002 401 การยืนยันตัวตนล้มเหลว โทเค็นหมดอายุหรือถูกปิดใช้งาน
2004 403 ไม่มีสิทธิ์เรียกใช้ API นี้
3001 400 รูปแบบพารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าตรงกับรูปแบบ JSON หรือไม่
3002 400 พารามิเตอร์คำขอไม่ถูกต้อง ตรวจสอบว่าตรงกับข้อกำหนดหรือไม่
4001 400 เทมเพลตไม่มีอยู่

รับรายการแม่แบบทั้งหมด

ปัจจุบัน API นี้ไม่รองรับการแบ่งหน้าและจะส่งคืนรายการแม่แบบทั้งหมดแบบย่อ โดยส่วนใหญ่จะไม่รวมเนื้อหาเฉพาะ หากต้องการเนื้อหาโดยละเอียด โปรดใช้ API รายละเอียด

Endpoint

GET /v1/template-configs

การยืนยันตัวตน

ใช้ HTTP Basic Authentication เพิ่มส่วนหัว Authorization ใน HTTP Header:

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

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

base64_auth_string ข้างต้นถูกสร้างขึ้นโดยใช้อัลกอริทึม: base64(dev_key:dev_secret)

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

ส่วนหัวของคำขอ

GET /v1/template-configs HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              GET /v1/template-configs  HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

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

เนื้อหาคำขอ

ไม่มี

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

ไม่มี

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

[{ "template_id": "test-template-1", // รหัสแม่แบบที่กำหนดเอง ไม่ซ้ำกันภายในแอปพลิเคชัน "description": "Test Template 1", // คำอธิบายของแม่แบบ "send_channel_strategy": "whatsapp|sms", // กลยุทธ์การส่งของแม่แบบ รองรับ whatsapp/sms/voice/email กลยุทธ์ที่รวมกันใช้ตัวอักษร "|" เพื่อระบุ fallback "brand_name": "Brand Name", // ชื่อแบรนด์ ใช้เป็นลายเซ็นในเนื้อหาแม่แบบสำหรับบางประเทศ/ภูมิภาค (เช่น จำเป็นสำหรับช่องทาง SMS ในบางประเทศ/ภูมิภาค) "verify_code_config": { // การกำหนดค่ารหัสยืนยัน ส่งคืนเมื่อแม่แบบมีประเภทของรหัสยืนยัน "verify_code_type": 1, // ประเภทของรหัสยืนยัน ช่วง [1,7] "verify_code_len": 6, // ความยาวของรหัสยืนยัน ช่วง [4,10] "verify_code_ttl": 1 // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เพียง 1, 5 หรือ 10 }, "whatsapp_config": { // การกำหนดค่าสำหรับกลยุทธ์ whatsapp ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง whatsapp "template_type": 1 // ประเภทแม่แบบ whatsapp ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1 }, "sms_config": { // การกำหนดค่าสำหรับกลยุทธ์ SMS ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง SMS "template_type": 2, // ประเภทแม่แบบ SMS ค่า: 1-แม่แบบเริ่มต้น/2-แม่แบบกำหนดเอง "template_parts": 1 // ส่วนการคำนวณค่าบริการสำหรับแม่แบบ SMS หากแม่แบบยาวเกินไป ราคาที่เฉพาะเจาะจง = ส่วนค่าบริการ * ราคาต่อหน่วย }, "voice_config": { // การกำหนดค่าสำหรับกลยุทธ์เสียง ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงเสียง "template_type": 1 // ประเภทแม่แบบเสียง ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1 }, "email_config": { // การกำหนดค่าสำหรับกลยุทธ์อีเมล ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงอีเมล "template_name": "Email Template Name" // ชื่อแม่แบบอีเมล }, "pwa_config": { // การกำหนดค่าที่เกี่ยวข้องกับ PWA ส่งคืนเมื่อมีการกำหนดค่า PWA "pwa_platform": "xx", // แพลตฟอร์ม PWA ที่ใช้ "pwa_code": "xx" // รหัสที่ใช้ในแพลตฟอร์ม PWA }, "created_time": 1234567890, // เวลาสร้างแม่แบบในรูปแบบ timestamp แม่นยำถึงวินาที "status": 1, // สถานะแม่แบบ ค่า: 1-รอการตรวจสอบ/2-อนุมัติ/3-ปฏิเสธ "audit_remark": "xx" // หมายเหตุการตรวจสอบ โดยทั่วไปใช้ดูเหตุผลการปฏิเสธเมื่อการตรวจสอบถูกปฏิเสธ },...] // หมายเหตุ: นี่คืออาร์เรย์ของอ็อบเจ็กต์
              
              [{
    "template_id": "test-template-1",       // รหัสแม่แบบที่กำหนดเอง ไม่ซ้ำกันภายในแอปพลิเคชัน
    "description": "Test Template 1",       // คำอธิบายของแม่แบบ
    "send_channel_strategy": "whatsapp|sms",    // กลยุทธ์การส่งของแม่แบบ รองรับ whatsapp/sms/voice/email กลยุทธ์ที่รวมกันใช้ตัวอักษร "|" เพื่อระบุ fallback
    "brand_name": "Brand Name",             // ชื่อแบรนด์ ใช้เป็นลายเซ็นในเนื้อหาแม่แบบสำหรับบางประเทศ/ภูมิภาค (เช่น จำเป็นสำหรับช่องทาง SMS ในบางประเทศ/ภูมิภาค)
    "verify_code_config": {                 // การกำหนดค่ารหัสยืนยัน ส่งคืนเมื่อแม่แบบมีประเภทของรหัสยืนยัน
        "verify_code_type": 1,              // ประเภทของรหัสยืนยัน ช่วง [1,7]
        "verify_code_len": 6,               // ความยาวของรหัสยืนยัน ช่วง [4,10]
        "verify_code_ttl": 1                // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เพียง 1, 5 หรือ 10
    },
    "whatsapp_config": {                    // การกำหนดค่าสำหรับกลยุทธ์ whatsapp ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง whatsapp
        "template_type": 1                  // ประเภทแม่แบบ whatsapp ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1
    },
    "sms_config": {                         // การกำหนดค่าสำหรับกลยุทธ์ SMS ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง SMS
        "template_type": 2,                 // ประเภทแม่แบบ SMS ค่า: 1-แม่แบบเริ่มต้น/2-แม่แบบกำหนดเอง
        "template_parts": 1                 // ส่วนการคำนวณค่าบริการสำหรับแม่แบบ SMS หากแม่แบบยาวเกินไป ราคาที่เฉพาะเจาะจง = ส่วนค่าบริการ * ราคาต่อหน่วย
    },
    "voice_config": {                       // การกำหนดค่าสำหรับกลยุทธ์เสียง ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงเสียง
        "template_type": 1                  // ประเภทแม่แบบเสียง ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1
    },
    "email_config": {                       // การกำหนดค่าสำหรับกลยุทธ์อีเมล ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงอีเมล
        "template_name": "Email Template Name" // ชื่อแม่แบบอีเมล
    },
    "pwa_config": {                         // การกำหนดค่าที่เกี่ยวข้องกับ PWA ส่งคืนเมื่อมีการกำหนดค่า PWA
        "pwa_platform": "xx",               // แพลตฟอร์ม PWA ที่ใช้
        "pwa_code": "xx"                    // รหัสที่ใช้ในแพลตฟอร์ม PWA
    },
    "created_time": 1234567890,             // เวลาสร้างแม่แบบในรูปแบบ timestamp แม่นยำถึงวินาที
    "status": 1,                            // สถานะแม่แบบ ค่า: 1-รอการตรวจสอบ/2-อนุมัติ/3-ปฏิเสธ
    "audit_remark": "xx"                    // หมายเหตุการตรวจสอบ โดยทั่วไปใช้ดูเหตุผลการปฏิเสธเมื่อการตรวจสอบถูกปฏิเสธ
},...]      // หมายเหตุ: นี่คืออาร์เรย์ของอ็อบเจ็กต์

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

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

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

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

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

รหัสข้อผิดพลาด รหัส HTTP คำอธิบาย
1000 500 ข้อผิดพลาดภายใน
2001 401 การยืนยันตัวตนล้มเหลว ให้ token ไม่ถูกต้อง
2002 401 การยืนยันตัวตนล้มเหลว token หมดอายุหรือถูกปิดใช้งาน
2004 403 ไม่มีสิทธิ์ในการเรียกใช้ API นี้
4001 400 แม่แบบไม่อยู่

รับรายละเอียดแม่แบบ

Endpoint

GET /v1/template-configs/{templateId}

การยืนยันตัวตน

ใช้ HTTP Basic Authentication เพิ่มส่วนหัว Authorization ใน HTTP Header:

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

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

base64_auth_string ข้างต้นถูกสร้างขึ้นโดยใช้อัลกอริทึม: base64(dev_key:dev_secret)

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

ส่วนหัวของคำขอ

GET /v1/template-configs/custom-template-id HTTP/1.1 Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              GET /v1/template-configs/custom-template-id  HTTP/1.1
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

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

เนื้อหาคำขอ

ไม่มี

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

{templateId} ใน URL แทนรหัสแม่แบบที่จะดึงข้อมูล ซึ่งถูกกำหนดโดยผู้เรียกเมื่อสร้างแม่แบบ

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

{ "template_id": "test-template-1", // รหัสแม่แบบที่กำหนดเอง ไม่ซ้ำกันภายในแอปพลิเคชัน "description": "Test Template 1", // คำอธิบายของแม่แบบ "send_channel_strategy": "whatsapp|sms", // กลยุทธ์การส่งของแม่แบบ รองรับ whatsapp/sms/voice/email กลยุทธ์ที่รวมกันใช้ตัวอักษร "|" เพื่อระบุ fallback "brand_name": "Brand Name", // ชื่อแบรนด์ ใช้เป็นลายเซ็นในเนื้อหาแม่แบบสำหรับบางประเทศ/ภูมิภาค (เช่น จำเป็นสำหรับช่องทาง SMS ในบางประเทศ/ภูมิภาค) "verify_code_config": { // การกำหนดค่ารหัสยืนยัน ส่งคืนเมื่อแม่แบบมีประเภทของรหัสยืนยัน "verify_code_type": 1, // ประเภทของรหัสยืนยัน ช่วง [1,7] "verify_code_len": 6, // ความยาวของรหัสยืนยัน ช่วง [4,10] "verify_code_ttl": 1 // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เพียง 1, 5 หรือ 10 }, "whatsapp_config": { // การกำหนดค่าสำหรับกลยุทธ์ whatsapp ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง whatsapp "template_type": 1 // ประเภทแม่แบบ whatsapp ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1 }, "sms_config": { // การกำหนดค่าสำหรับกลยุทธ์ SMS ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง SMS "template_type": 2, // ประเภทแม่แบบ SMS ค่า: 1-แม่แบบเริ่มต้น/2-แม่แบบกำหนดเอง "template_parts": 1, // ส่วนการคำนวณค่าบริการสำหรับแม่แบบ SMS หากแม่แบบยาวเกินไป ราคาที่เฉพาะเจาะจง = ส่วนค่าบริการ * ราคาต่อหน่วย "template_custom_config": { // การกำหนดค่าแม่แบบ SMS แบบกำหนดเอง ใช้ได้เมื่อประเภทแม่แบบ SMS เป็นแบบกำหนดเอง "custom_sub_type": "authentication", // ประเภทแม่แบบกำหนดเอง ค่า: authentication-รหัสยืนยัน/marketing-การตลาด/utility-การแจ้งเตือน "custom_content": "xxx" // เนื้อหาแม่แบบกำหนดเอง หมายเหตุ: หากประเภทย่อยคือ authentication (รหัสยืนยัน) จะต้องมีตัวแปร {{code}} } }, "voice_config": { // การกำหนดค่าสำหรับกลยุทธ์เสียง ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงเสียง "template_type": 1 // ประเภทแม่แบบเสียง ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1 }, "email_config": { // การกำหนดค่าสำหรับกลยุทธ์อีเมล ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงอีเมล "template_name": "Email Template Name", // ชื่อแม่แบบอีเมล "template_custom_configs": [{ // การกำหนดค่าแม่แบบอีเมลแบบกำหนดเอง ใช้ได้เมื่อประเภทแม่แบบอีเมลเป็นแบบกำหนดเอง หมายเหตุ: นี่คืออาร์เรย์ของอ็อบเจ็กต์ โดยหลักแยกตามภาษาเพื่อการกำหนดค่าหลายภาษา "language": "default", // ภาษา "default" คือค่าเริ่มต้น เมื่อส่งข้อความสามารถจับคู่เนื้อหาแม่แบบต่างๆ ตามพารามิเตอร์ภาษา "pre_from_name": "test", // ชื่อผู้ส่งที่ตั้งไว้ล่วงหน้า "pre_from_mail": "test@test.com", // อีเมลผู้ส่งที่ตั้งไว้ล่วงหน้า "pre_subject": "test", // หัวข้ออีเมลที่ตั้งไว้ล่วงหน้า "template_content": "เนื้อหาแม่แบบอีเมลที่ตั้งไว้ล่วงหน้า จำเป็น ตัวแปรที่กำหนดเองเช่น {{self}} รหัสยืนยันคือ {{code}}", // เนื้อหาอีเมล รองรับ HTML ตัวแปรต้องอยู่ในวงเล็บปีกกา {{}} สองชั้น "pre_param_map": { // ค่าเริ่มต้นสำหรับตัวแปรในเนื้อหาอีเมล หากไม่มีการระบุค่าตัวแปรระหว่างการส่ง ค่าเริ่มต้นด้านล่างจะใช้แทนตัวแปร ประกาศเป็นคู่คีย์-ค่า "self": "นี่คือค่าดีฟอลต์สำหรับตัวแปร self" } }] }, "pwa_config": { // การกำหนดค่าที่เกี่ยวข้องกับ PWA ส่งคืนเมื่อมีการกำหนดค่า PWA "pwa_platform": "xx", // แพลตฟอร์ม PWA ที่ใช้ "pwa_code": "xx" // รหัสที่ใช้ในแพลตฟอร์ม PWA }, "created_time": 1234567890, // เวลาสร้างแม่แบบในรูปแบบ timestamp แม่นยำถึงวินาที "status": 1, // สถานะแม่แบบ ค่า: 1-รอการตรวจสอบ/2-อนุมัติ/3-ปฏิเสธ "audit_remark": "xx" // หมายเหตุการตรวจสอบ โดยทั่วไปใช้ดูเหตุผลการปฏิเสธเมื่อการตรวจสอบถูกปฏิเสธ }
              
              {
    "template_id": "test-template-1",       // รหัสแม่แบบที่กำหนดเอง ไม่ซ้ำกันภายในแอปพลิเคชัน
    "description": "Test Template 1",       // คำอธิบายของแม่แบบ
    "send_channel_strategy": "whatsapp|sms",    // กลยุทธ์การส่งของแม่แบบ รองรับ whatsapp/sms/voice/email กลยุทธ์ที่รวมกันใช้ตัวอักษร "|" เพื่อระบุ fallback
    "brand_name": "Brand Name",             // ชื่อแบรนด์ ใช้เป็นลายเซ็นในเนื้อหาแม่แบบสำหรับบางประเทศ/ภูมิภาค (เช่น จำเป็นสำหรับช่องทาง SMS ในบางประเทศ/ภูมิภาค)
    "verify_code_config": {                 // การกำหนดค่ารหัสยืนยัน ส่งคืนเมื่อแม่แบบมีประเภทของรหัสยืนยัน
        "verify_code_type": 1,              // ประเภทของรหัสยืนยัน ช่วง [1,7]
        "verify_code_len": 6,               // ความยาวของรหัสยืนยัน ช่วง [4,10]
        "verify_code_ttl": 1                // ระยะเวลาความถูกต้องของรหัสยืนยัน ช่วง [1,10] หมายเหตุ: เมื่อกลยุทธ์รวมถึง whatsapp ค่าได้เพียง 1, 5 หรือ 10
    },
    "whatsapp_config": {                    // การกำหนดค่าสำหรับกลยุทธ์ whatsapp ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง whatsapp
        "template_type": 1                  // ประเภทแม่แบบ whatsapp ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1
    },
    "sms_config": {                         // การกำหนดค่าสำหรับกลยุทธ์ SMS ส่งคืนเมื่อกลยุทธ์การส่งรวมถึง SMS
        "template_type": 2,                 // ประเภทแม่แบบ SMS ค่า: 1-แม่แบบเริ่มต้น/2-แม่แบบกำหนดเอง
        "template_parts": 1,                // ส่วนการคำนวณค่าบริการสำหรับแม่แบบ SMS หากแม่แบบยาวเกินไป ราคาที่เฉพาะเจาะจง = ส่วนค่าบริการ * ราคาต่อหน่วย
        "template_custom_config": {         // การกำหนดค่าแม่แบบ SMS แบบกำหนดเอง ใช้ได้เมื่อประเภทแม่แบบ SMS เป็นแบบกำหนดเอง
            "custom_sub_type": "authentication",    // ประเภทแม่แบบกำหนดเอง ค่า: authentication-รหัสยืนยัน/marketing-การตลาด/utility-การแจ้งเตือน
            "custom_content": "xxx"                // เนื้อหาแม่แบบกำหนดเอง หมายเหตุ: หากประเภทย่อยคือ authentication (รหัสยืนยัน) จะต้องมีตัวแปร {{code}}
        }
    },
    "voice_config": {                       // การกำหนดค่าสำหรับกลยุทธ์เสียง ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงเสียง
        "template_type": 1                  // ประเภทแม่แบบเสียง ปัจจุบันรองรับเฉพาะแม่แบบเริ่มต้น ค่าแบบคงที่คือ 1
    },
    "email_config": {                       // การกำหนดค่าสำหรับกลยุทธ์อีเมล ส่งคืนเมื่อกลยุทธ์การส่งรวมถึงอีเมล
        "template_name": "Email Template Name", // ชื่อแม่แบบอีเมล
        "template_custom_configs": [{       // การกำหนดค่าแม่แบบอีเมลแบบกำหนดเอง ใช้ได้เมื่อประเภทแม่แบบอีเมลเป็นแบบกำหนดเอง หมายเหตุ: นี่คืออาร์เรย์ของอ็อบเจ็กต์ โดยหลักแยกตามภาษาเพื่อการกำหนดค่าหลายภาษา
            "language": "default",          // ภาษา "default" คือค่าเริ่มต้น เมื่อส่งข้อความสามารถจับคู่เนื้อหาแม่แบบต่างๆ ตามพารามิเตอร์ภาษา
            "pre_from_name": "test",        // ชื่อผู้ส่งที่ตั้งไว้ล่วงหน้า
            "pre_from_mail": "test@test.com",   // อีเมลผู้ส่งที่ตั้งไว้ล่วงหน้า
            "pre_subject": "test",          // หัวข้ออีเมลที่ตั้งไว้ล่วงหน้า
            "template_content": "เนื้อหาแม่แบบอีเมลที่ตั้งไว้ล่วงหน้า จำเป็น ตัวแปรที่กำหนดเองเช่น {{self}} รหัสยืนยันคือ {{code}}", // เนื้อหาอีเมล รองรับ HTML ตัวแปรต้องอยู่ในวงเล็บปีกกา {{}} สองชั้น
            "pre_param_map": {              // ค่าเริ่มต้นสำหรับตัวแปรในเนื้อหาอีเมล หากไม่มีการระบุค่าตัวแปรระหว่างการส่ง ค่าเริ่มต้นด้านล่างจะใช้แทนตัวแปร ประกาศเป็นคู่คีย์-ค่า
                "self": "นี่คือค่าดีฟอลต์สำหรับตัวแปร self"
            }
        }]
    },
    "pwa_config": {                         // การกำหนดค่าที่เกี่ยวข้องกับ PWA ส่งคืนเมื่อมีการกำหนดค่า PWA
        "pwa_platform": "xx",               // แพลตฟอร์ม PWA ที่ใช้
        "pwa_code": "xx"                    // รหัสที่ใช้ในแพลตฟอร์ม PWA
    },
    "created_time": 1234567890,             // เวลาสร้างแม่แบบในรูปแบบ timestamp แม่นยำถึงวินาที
    "status": 1,                            // สถานะแม่แบบ ค่า: 1-รอการตรวจสอบ/2-อนุมัติ/3-ปฏิเสธ
    "audit_remark": "xx"                    // หมายเหตุการตรวจสอบ โดยทั่วไปใช้ดูเหตุผลการปฏิเสธเมื่อการตรวจสอบถูกปฏิเสธ
}

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

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

{ "code": 4001, "message": "config not exist" }
              
              {
    "code": 4001,
    "message": "config not exist"
}

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

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

รหัสข้อผิดพลาด รหัส HTTP คำอธิบาย
1000 500 ข้อผิดพลาดภายใน
2001 401 การยืนยันตัวตนล้มเหลว ให้ token ไม่ถูกต้อง
2002 401 การยืนยันตัวตนล้มเหลว token หมดอายุหรือถูกปิดใช้งาน
2004 403 ไม่มีสิทธิ์ในการเรียกใช้ API นี้
4001 400 แม่แบบไม่อยู่
icon
ติดต่อฝ่ายขาย