เริ่มต้นอย่างรวดเร็ว
คู่มือนี้จะนำคุณส่ง SMS แบบ Transactional หนึ่งรายการ คุณต้องมี API-Key, X-TenantID และ ชื่อผู้ส่งที่ได้รับอนุมัติ อย่างน้อยหนึ่งชื่อ
1. ตั้งค่า Credentials
bash
export ME_API_KEY="your-app-token"
export ME_TENANT="your-tenant-id"
export ME_BASE="https://api.messageeagle.com/api/v1/app1/platform"2. ส่งข้อความ
bash
curl -X POST "$ME_BASE/sms/send_messages/message" \
-H "API-Key: $ME_API_KEY" \
-H "X-TenantID: $ME_TENANT" \
-H "Content-Type: application/json" \
-d '{
"check_spam_msg_mode": "not_check",
"data": [
{
"sender_name": "MyBrand",
"operator": "ais",
"message": "Hi {{first_name}}, your order has shipped.",
"phone_number": "+66886578553",
"first_name": "Mali",
"transaction_uuid": "018f7b2a-7c3e-7a1b-9c2d-1a2b3c4d5e6f"
}
]
}'go
package main
import (
"context"
"log"
"github.com/lodashventure/messageeagle/sms-voice/sdk"
)
func main() {
client, err := sdk.New(sdk.Config{
BaseURL: "https://api.messageeagle.com",
APIKey: "your-api-key",
TenantID: "your-organization-id",
})
if err != nil {
log.Fatal(err)
}
resp, err := client.SMS.SendMessage(context.Background(), &sdk.SendMessageRequest{
CheckSpamMsgMode: "not_check",
Data: []sdk.SendMessageItem{{
SenderName: "MyBrand",
Operator: "ais",
PhoneNumber: "+66886578553",
Message: "Hi Mali, your order has shipped.",
}},
})
if err != nil {
log.Fatal(err)
}
log.Printf("accepted=%d rejected=%d batches=%+v", resp.Accepted, resp.Rejected, resp.Batches)
}ts
const res = await fetch(`${ME_BASE}/sms/send_messages/message`, {
method: "POST",
headers: {
"API-Key": ME_API_KEY,
"X-TenantID": ME_TENANT,
"Content-Type": "application/json",
},
body: JSON.stringify({
check_spam_msg_mode: "not_check",
data: [
{
sender_name: "MyBrand",
operator: "ais",
message: "Hi {{first_name}}, your order has shipped.",
phone_number: "+66886578553",
first_name: "Mali",
transaction_uuid: "018f7b2a-7c3e-7a1b-9c2d-1a2b3c4d5e6f",
},
],
}),
});
console.log(await res.json());3. อ่านผลลัพธ์
ผลลัพธ์รายงานการกระจายข้อความ โดยห่อไว้ใน data แถวที่ใช้ operator + ผู้ส่ง + ข้อความเดียวกันจะถูกรวมเป็นหนึ่ง batch
json
{
"data": {
"accepted": 1,
"rejected": 0,
"batches": [
{
"batch_id": "018f7b2a-7c3e-7a1b-9c2d-1a2b3c4d5e6f",
"accepted": 1,
"rejected": 0
}
]
}
}undeliverable_chars
batch อาจมี undeliverable_chars ซึ่งคือตัวอักษรที่ผู้ให้บริการทำหายระหว่างทาง ความเสียหายนี้มองไม่เห็นจากภายนอก เพราะข้อความถูกรับไว้ คิดค่าบริการแล้ว แต่เครื่องปลายทางไม่แสดงตัวอักษรนั้น
ชื่อผู้ส่งต้องได้รับอนุมัติ
ถ้า sender_name ยังไม่ได้รับอนุมัติสำหรับผู้ให้บริการปลายทาง ผู้รับเหล่านั้นจะถูกนับใน rejected แทนที่จะทำให้ทั้งคำขอล้มเหลว
ขั้นตอนถัดไป
- Authentication — รายละเอียด Header และข้อผิดพลาด
- SMS Messaging — การส่งแบบ Broadcast, การจัดกำหนดเวลา และ Templating
- Webhooks & Delivery Reports — รับการแจ้งเตือนเมื่อข้อความถูกส่งถึงผู้รับ
