สถิติข้อความ
messages:list
Anchor link toแสดงรายการข้อความที่ส่งแล้ว
POST https://api.pushwoosh.com/api/v2/messages:list
ส่วนหัว (Headers)
Anchor link to| ชื่อ | จำเป็น | คำอธิบาย |
|---|---|---|
Authorization | ใช่ | Server API token ต้องระบุในรูปแบบต่อไปนี้: Authorization: Api <Server Key> |
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อ | จำเป็น | ประเภท | คำอธิบาย |
|---|---|---|---|
platforms | ไม่ | Array | แพลตฟอร์มข้อความ ค่าที่เป็นไปได้: "IOS", "ANDROID", "OSX", "WINDOWS", "AMAZON", "SAFARI", "CHROME", "FIREFOX", "IE", "EMAIL", "HUAWEI_ANDROID", "SMS" |
date_range | ไม่ | Object | ช่วงเวลาการรายงาน date_from และ date_to ต้องเป็นไปตามรูปแบบ YYYY-MM-DD (เช่น "2000-01-01") |
campaign | ไม่ | String | รหัสแคมเปญ (Campaign code) |
filters | ใช่ | Object | ตัวกรองข้อความ |
source | ไม่ | String | แหล่งที่มาของข้อความ ตัวอย่างเช่น: AB_TEST, API, AUTO_PUSH, CP, CSV, CUSTOMER_JOURNEY, EMAIL_API, EMAIL_CP, GEO_ZONE, PUSH_ON_EVENT, RSS |
messages_codes | ไม่ | Array | รหัสข้อความ (Message codes) ที่ได้รับจากการตอบกลับของ API /createMessage |
messages_ids | ไม่ | Array | ID ของข้อความที่ได้รับจากประวัติข้อความ |
params | ไม่ | Object | ระบุว่าจะแสดงรายละเอียดและเมตริกของข้อความหรือไม่ ตั้งค่า with_details: true เพื่อรวมอ็อบเจกต์ "details" และ with_metrics: true เพื่อรวมอ็อบเจกต์ "metrics" ในการตอบกลับ |
application | ใช่ | String | รหัสแอปพลิเคชัน Pushwoosh |
per_page | ไม่ | Integer | จำนวนผลลัพธ์ต่อหน้า (≤ 1000) |
page | ไม่ | Integer | หมายเลขหน้าสำหรับการแบ่งหน้า ดูขีดจำกัดการแบ่งหน้าแบบลึกด้านล่าง |
ตัวอย่างคำขอ
Anchor link to{ "filters": { "platforms": [], // IOS, ANDROID, OSX, WINDOWS, AMAZON, SAFARI, CHROME, FIREFOX, IE, EMAIL, HUAWEI_ANDROID, SMS "date_range": { "date_from": "string", // รูปแบบที่ต้องการ: 2000-01-01 "date_to": "string" // รูปแบบที่ต้องการ: 2000-01-01 }, "source": "API", // AB_TEST, API, AUTO_PUSH, CP, CSV, CUSTOMER_JOURNEY, EMAIL_API, EMAIL_CP, GEO_ZONE, PUSH_ON_EVENT, RSS "campaign": "string", // รหัสแคมเปญ "messages_ids": [], // ID ของข้อความ "messages_codes": [], // รหัสข้อความ "application": "string" // รหัสแอปพลิเคชัน Pushwoosh }, "params": { "with_details": true, // เพิ่มรายละเอียดข้อความในการตอบกลับ (อ็อบเจกต์ "details") "with_metrics": true // เพิ่มเมตริกข้อความในการตอบกลับ (อ็อบเจกต์ "metrics") }, "per_page": 20, // <= 1000 "page": 0}โค้ดการตอบกลับและตัวอย่าง
{ "total": 0, "items": [{ "id": 0, "code": "string", "created_date": "string", "send_date": "string", "status": "string", "platforms": [], "source": "string", "push_info": { "details": { "title": "string", "filter_name": "string", "filter_code": "string", "content": { "key": "value" }, "platform_parameters": { "android_header": "string", "android_root_params": { "key": "value" }, "ios_title": "string", "ios_subtitle": "string", "ios_root_params": { "key": "value" }, "chrome_header": "string", "chrome_root_params": { "key": "value" }, "firefox_header": "string", "firefox_root_params": { "key": "value" }, "conditions": [ // เงื่อนไขแท็ก (ดู /developer/api-reference/messages-api/#tag-conditions) TAG_CONDITION1, TAG_CONDITION2, ..., TAG_CONDITIONN ], "conditions_operator": "AND", // ตัวดำเนินการตรรกะสำหรับอาร์เรย์เงื่อนไข; ค่าที่เป็นไปได้: AND, OR "data": { "key": "value" } }, "follow_user_timezone": true }, "metrics": [{ "sends": 0, "opens": 0, "deliveries": 0, "inbox_opens": 0, "unshowable_sends": 0, "errors": 0, "platform": 0 }] }, "email_info": { "details": { "template": "string", "filter_name": "string", "filter_code": "string", "subject": { "key": "value" }, "from_name": "string", "from_email": "string", "reply_name": "string", "reply_email": "string", "follow_user_timezone": true, "conditions": [ // เงื่อนไขแท็ก (ดู Messages-api - tag-conditions) TAG_CONDITION1, TAG_CONDITION2, ..., TAG_CONDITIONN ], "conditions_operator": "AND" // ตัวดำเนินการตรรกะสำหรับอาร์เรย์เงื่อนไข; ค่าที่เป็นไปได้: AND, OR }, "metrics": [{ "sends": 0, "opens": 0, "deliveries": 0, "hard_bounces": 0, "soft_bounces": 0, "rejects": 0, "confirmed_sends": 0, "unsubs": 0, "complaints": 0, "errors": 0 }] } }]}date_range ครอบคลุมระยะเวลามากกว่า 30 วัน:
{ "error": "exceeded the maximum date interval. Max interval: 30 days"}page × per_page เกินขีดจำกัดการแบ่งหน้าแบบลึก:
{ "error": "requested result window is too large, narrow the date range"}{ "error": "account not found"}totalsByIntervals
Anchor link toส่งคืนข้อมูลเมตริกและ conversion ตามรหัสข้อความ โดยรวบรวมเป็นรายชั่วโมง
POST https://api.pushwoosh.com/api/v2/statistics/messages/totalsByIntervals
การให้สิทธิ์ (Authorization)
Anchor link toการให้สิทธิ์จะจัดการผ่าน API Access Token ในส่วนหัวของคำขอ
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อพารามิเตอร์ | ประเภท | คำอธิบาย | จำเป็น |
|---|---|---|---|
message_code | string | รหัสข้อความ (Message code) ที่ได้รับจากการตอบกลับของ API /createMessage | ใช่ |
platforms | [int] | แพลตฟอร์ม | ไม่ |
ตัวอย่างคำขอ
Anchor link to{ "message_code": "XXXXX-XXXXXXXXX-XXXXXXXX", // จำเป็น. ตัวระบุข้อความที่ไม่ซ้ำกัน "platforms": [1, 3, 7, 10, 11, 12] // ไม่จำเป็น. รายการรหัสแพลตฟอร์ม}ฟิลด์การตอบกลับ
Anchor link to| ชื่อ | ประเภท | คำอธิบาย |
|---|---|---|
metrics | array | ประกอบด้วยอาร์เรย์ของเมตริกข้อความ |
timestamp | string | เวลาของเมตริก |
platform | int | รหัสแพลตฟอร์ม (เช่น iOS, Android) |
sends | string | จำนวนข้อความที่ส่ง |
opens | string | จำนวนข้อความที่เปิด |
deliveries | string | จำนวนข้อความที่ส่งถึง |
inbox_opens | string | จำนวนการเปิดในกล่องข้อความ |
unshowable_sends | string | จำนวนข้อความที่ส่งแล้วแต่ไม่สามารถแสดงได้ |
errors | string | จำนวนข้อผิดพลาด |
conversion | object | ประกอบด้วยข้อมูล conversion |
sends | string | จำนวนข้อความที่ส่งทั้งหมด |
opens | string | จำนวนข้อความที่เปิดทั้งหมด |
events | array | อาร์เรย์ของ event พร้อมสถิติ |
name | string | ชื่อของ event (เช่น cart add) |
hits | string | จำนวน hits |
conversion | float | อัตรา conversion เทียบกับการเปิด |
revenue | float | รายได้ (เฉพาะ event ที่มีแอตทริบิวต์ __amount และ __currency) |
ตัวอย่างการตอบกลับ
Anchor link to{ "metrics": [{ "timestamp": "2024-08-03 15:00:00", // ประทับเวลาของเมตริกในรูปแบบ "YYYY-MM-DD HH:MM:SS" "platform": 3, // รหัสแพลตฟอร์ม "sends": "55902", // จำนวนข้อความที่ส่ง "opens": "382", // จำนวนข้อความที่เปิด "deliveries": "22931", // จำนวนข้อความที่ส่งถึง "inbox_opens": "0", // จำนวนข้อความที่เปิดในกล่องข้อความ "unshowable_sends": "2", // จำนวนข้อความที่ไม่สามารถแสดงได้ "errors": "0" // จำนวนข้อผิดพลาดที่พบ }], "conversion": { "sends": "55902", // จำนวนข้อความที่ส่งทั้งหมด "opens": "772", // จำนวนข้อความที่เปิดทั้งหมด "events": [{ "name": "cart_add", // ชื่อของ event "hits": "96", // จำนวน hits สำหรับ event "conversion": 0.12, // อัตรา conversion เทียบกับการเปิด "revenue": 0 // รายได้ที่เกิดจาก event (เฉพาะ event ที่มีแอตทริบิวต์ amount/currency) }] }}getDeliveryFunnel
Anchor link toส่งคืน delivery funnel สำหรับข้อความเดียว: audience → sent → successful → delivered → opens พร้อมรายละเอียดว่า audience หายไปในแต่ละขั้นตอนที่ใด
POST https://api.pushwoosh.com/api/v2/statistics/messages/getDeliveryFunnel
ส่วนหัว (Headers)
Anchor link to| ชื่อ | จำเป็น | คำอธิบาย |
|---|---|---|
Authorization | จำเป็น | API access token จาก Pushwoosh Control Panel |
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อ | จำเป็น | ประเภท | คำอธิบาย |
|---|---|---|---|
message_code | ใช่ | String | รหัสข้อความ (Message code) ที่ได้รับจากการตอบกลับของ API /createMessage |
timestamp_from | ใช่ | String (RFC 3339 date-time) | จุดเริ่มต้นของช่วงเวลาการรายงาน เช่น "2026-08-01T00:00:00Z" ต้องมาก่อน timestamp_to |
timestamp_to | ใช่ | String (RFC 3339 date-time) | จุดสิ้นสุดของช่วงเวลาการรายงาน เช่น "2026-08-04T00:00:00Z" |
platforms | ไม่ | Array of Integer | ตัวกรอง ID แพลตฟอร์ม (ไม่จำเป็น) |
ตัวอย่างคำขอ
Anchor link to{ "message_code": "A444-AAABBBCC-00112233", // จำเป็น, รหัสข้อความที่ได้รับจากการตอบกลับของ /createMessage "timestamp_from": "2026-08-01T00:00:00Z", // จำเป็น, ต้องมาก่อน timestamp_to "timestamp_to": "2026-08-04T00:00:00Z", // จำเป็น "platforms": [1, 3, 7] // ไม่จำเป็น, รายการรหัสแพลตฟอร์ม}ฟิลด์การตอบกลับ
Anchor link to| ชื่อ | ประเภท | คำอธิบาย |
|---|---|---|
funnel | array | ขั้นตอนของ Funnel จะส่งคืนตามลำดับนี้เสมอ: STAGE_AUDIENCE, STAGE_SENT, STAGE_SUCCESSFUL, STAGE_DELIVERED, STAGE_OPENS |
stage | string | ชื่อขั้นตอนของ Funnel |
count | string | จำนวนรวมสำหรับขั้นตอน |
pieces | array | การแบ่งย่อยของ count เป็นหมวดหมู่ หมวดหมู่ที่มีจำนวนเป็นศูนย์จะถูกละไว้แทนที่จะส่งคืนเป็น 0 |
pieces[].kind | string | ความสัมพันธ์ของส่วนย่อยกับผลรวมของขั้นตอน: KIND_PASSED (ไปยังขั้นตอนถัดไป), KIND_REASON (หลุดออกไปด้วยเหตุผลนี้), หรือ KIND_SUBSET (เป็นส่วนหนึ่งของขั้นตอน ไม่ใช่ตัวบวกแยกต่างหาก) |
pieces[].category | string | หมวดหมู่การแบ่งย่อย เช่น INVALID_TOKEN, FREQUENCY_CAPPING, CONTROL_GROUP — ดูตารางขั้นตอนด้านล่าง |
pieces[].count | string | จำนวนสำหรับหมวดหมู่นี้ |
ขั้นตอนของ Funnel
Anchor link to| ขั้นตอน | count หมายถึง | pieces |
|---|---|---|
STAGE_AUDIENCE | อุปกรณ์ที่นำเข้าสู่การประมวลผล | KIND_PASSED ELIGIBLE_AUDIENCE (ไปยัง STAGE_SENT); KIND_REASON: FREQUENCY_CAPPING, CONTROL_GROUP, UNSUBSCRIBED, BOUNCED, COMPLAINT, FILTERED_BY_CATEGORY |
STAGE_SENT | มีการพยายามส่ง | KIND_PASSED SUCCESSFUL (ผู้ให้บริการยอมรับ); KIND_REASON: INVALID_TOKEN, NO_TOKEN, NO_DEVICE, PLATFORM_DISABLED, QUOTA_EXCEEDED, INVALID_CONTENT, INVALID_CONFIGURATION, INTERNAL_ERROR, PROVIDER_ERROR (ข้อผิดพลาดของผู้ให้บริการที่ไม่จัดหมวดหมู่) |
STAGE_SUCCESSFUL | ผู้ให้บริการยอมรับ | KIND_PASSED SHOWABLE; KIND_REASON NOTIFICATIONS_DISABLED |
STAGE_DELIVERED | อุปกรณ์ที่ไม่ซ้ำกันที่ยืนยันการส่ง | ไม่มี |
STAGE_OPENS | อุปกรณ์ที่ไม่ซ้ำกันที่เปิด | KIND_SUBSET MACHINE_OPENS_AMPP (การเปิดที่เกิดจากระบบอัตโนมัติของ AMP ไม่ใช่การเปิดของผู้ใช้จริง) |
ตัวอย่างการตอบกลับ
Anchor link to{ "funnel": [ { "stage": "STAGE_AUDIENCE", "count": "600000", "pieces": [ { "kind": "KIND_PASSED", "category": "ELIGIBLE_AUDIENCE", "count": "580000" }, { "kind": "KIND_REASON", "category": "FREQUENCY_CAPPING", "count": "14000" }, { "kind": "KIND_REASON", "category": "CONTROL_GROUP", "count": "6000" } ] }, { "stage": "STAGE_SENT", "count": "580000", "pieces": [ { "kind": "KIND_PASSED", "category": "SUCCESSFUL", "count": "560000" }, { "kind": "KIND_REASON", "category": "INVALID_TOKEN", "count": "18000" }, { "kind": "KIND_REASON", "category": "PROVIDER_ERROR", "count": "2000" } ] }, { "stage": "STAGE_SUCCESSFUL", "count": "560000", "pieces": [ { "kind": "KIND_PASSED", "category": "SHOWABLE", "count": "540000" }, { "kind": "KIND_REASON", "category": "NOTIFICATIONS_DISABLED", "count": "20000" } ] }, { "stage": "STAGE_DELIVERED", "count": "168316", "pieces": [] }, { "stage": "STAGE_OPENS", "count": "30514", "pieces": [ { "kind": "KIND_SUBSET", "category": "MACHINE_OPENS_AMPP", "count": "412" } ] } ]}โค้ดการตอบกลับและตัวอย่าง
{ "funnel": []}{ "error": "message_code must be set"}จะถูกส่งคืนเป็น "invalid date range: timestamp_from must be before timestamp_to" เมื่อช่วงเวลาถูกกลับด้านหรือว่างเปล่า
{ "error": "account not found"}{ "error": "message not found"}getMessageLog
Anchor link toแสดงข้อมูลโดยละเอียดเกี่ยวกับข้อความที่ส่ง
POST https://api.pushwoosh.com/api/v2/statistics/getMessageLog
ส่วนหัว (Headers)
Anchor link to| ชื่อ | จำเป็น | คำอธิบาย |
|---|---|---|
Authorization | จำเป็น | API access token จาก Pushwoosh Control Panel |
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อ | จำเป็น | ประเภท | คำอธิบาย |
|---|---|---|---|
message_id | ไม่ | Integer | เลือก event ของข้อความตาม Message ID ที่ได้รับจากประวัติข้อความ ตัวอย่าง: 12345678900 |
message_code | ไม่ | String | เลือก event ของข้อความตาม รหัสข้อความ (Message code) ที่ได้รับจากการตอบกลับของ API /createMessage ตัวอย่าง: "A444-AAABBBCC-00112233" |
campaign_code | ไม่ | String | เลือก event ของข้อความตาม รหัสแคมเปญ (Campaign code) ที่ระบุใน payload ของข้อความของคุณ ตัวอย่าง: "AAAAA-XXXXX" |
hwid | ไม่ | String or Array | เลือก event ของข้อความตาม HWID (Hardware ID) หรืออาร์เรย์ของ HWIDs |
date_from | จำเป็นหากไม่ได้ระบุ message_id, message_code, หรือ campaign_code | Datetime | วันที่เริ่มต้นสำหรับการกรองข้อความ รูปแบบ: "YYYY-MM-DD HH:MM:SS" ตัวอย่าง: "2000-01-25 00:00:00" |
date_to | จำเป็นหากไม่ได้ระบุ message_id, message_code, หรือ campaign_code | Datetime | วันที่สิ้นสุดสำหรับการกรองข้อความ รูปแบบ: "YYYY-MM-DD HH:MM:SS" ตัวอย่าง: "2000-01-26 00:00:00" |
limit | ไม่ | Integer | จำนวนสูงสุดของ event ของข้อความที่ส่งคืนในการตอบกลับครั้งเดียว ค่าสูงสุด: 100000 |
pagination_token | ไม่ | String | โทเค็นการแบ่งหน้าที่ได้รับจากการตอบกลับ /getMessageLog ก่อนหน้า ใช้เพื่อดึงผลลัพธ์เพิ่มเติม |
user_id | ไม่ | String | เลือก event ของข้อความตาม User ID ที่กำหนดเอง ดู /registerUser สำหรับรายละเอียดเพิ่มเติม |
application_code | ใช่ | String | เลือก event ของข้อความตาม รหัสแอปพลิเคชัน Pushwoosh |
actions | ไม่ | Array | กรองผลลัพธ์ตามการกระทำของข้อความที่ระบุ ค่าที่เป็นไปได้: "sent", "delivered", "opened", "inbox_delivered", "inbox_read", "inbox_opened", "inbox_deleted" |
platforms | ไม่ | Array | อาร์เรย์ของแพลตฟอร์มเป้าหมายเพื่อกรองผลลัพธ์ ค่าที่เป็นไปได้: "ios", "android", "osx", "windows", "amazon", "safari", "chrome", "firefox", "ie", "email", "huawei_android" |
ตัวอย่างคำขอ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/getMessageLog' \--header 'Authorization: Key API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "pagination_token": "PAGINATION_TOKEN_FROM_PREVIOUS_RESPONSE", // ไม่จำเป็น, โทเค็นสำหรับการแบ่งหน้า "limit": 1000, // ไม่จำเป็น, จำนวนรายการสูงสุดสำหรับการตอบกลับครั้งเดียว "application_code": "XXXXX-XXXXX", // รหัสแอป Pushwoosh "message_code": "A444-AAABBBCC-00112233", // ไม่จำเป็น, รหัสข้อความที่ได้รับจากคำขอ /createMessaage "message_id": 1234567890, // ไม่จำเป็น, ID ของข้อความที่ได้รับจาก Pushwoosh Control Panel "campaign_code": "AAAAA-XXXXX", // ไม่จำเป็น, รหัสของแคมเปญที่จะดึงข้อมูลบันทึก "hwid": "aaazzzqqqqxxx", // ไม่จำเป็น, ID ฮาร์ดแวร์ของอุปกรณ์เฉพาะที่ถูกกำหนดเป้าหมายด้วยข้อความ "user_id": "user_123", // ไม่จำเป็น, ID ของผู้ใช้ที่ถูกกำหนดเป้าหมายด้วยข้อความ "date_from": "2000-01-25 00:00:00", // ไม่จำเป็น, จุดเริ่มต้นของช่วงเวลาสถิติ "date_to": "2000-02-10 23:59:59", // ไม่จำเป็น, จุดสิ้นสุดของช่วงเวลาสถิติ "actions": ["opened", "inbox_opened"], // ไม่จำเป็น, ใช้สำหรับการกรองผลลัพธ์ ค่าที่เป็นไปได้: "sent", "opened", "delivered", "inbox_delivered", "inbox_read", "inbox_opened", "inbox_deleted" การตอบกลับจะรวมข้อความทั้งหมดที่มีการกระทำที่ระบุ "platforms": ["ios", "chrome"] // ไม่จำเป็น, ใช้สำหรับการกรองผลลัพธ์ ค่าที่เป็นไปได้: "ios", "android", "osx", "windows", "amazon", "safari", "chrome", "firefox", "ie", "email", "huawei android"}'โค้ดการตอบกลับและตัวอย่าง
{ "pagination_token": "PAGINATION_TOKEN_FOR_NEXT_REQUEST", "data": [{ "timestamp": "2000-01-25T11:18:47Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "sent", "status": "success", "push_alerts_enabled": "true" }, { "timestamp": "2000-01-25T11:18:49Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "delivered", "push_alerts_enabled": "true" }, { "timestamp": "2000-01-25T11:19:23Z", "application_code": "XXXXX-XXXXX", "message_id": 12345678900, "message_code": "A444-AAABBBCC-00112233", "campaign_code": "AAAAA-XXXXX", "hwid": "aaazzzqqqqxxx", "user_id": "user_123", "platform": "android", "action": "opened", "push_alerts_enabled": "true" }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}สถิติอีเมล
Anchor link tolinksInteractions
Anchor link toแสดงสถิติการคลิกลิงก์ในอีเมล
POST https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractions
ส่วนหัว (Headers)
Anchor link to| ชื่อ | จำเป็น | คำอธิบาย |
|---|---|---|
Authorization | ใช่ | API access token จาก Pushwoosh Control Panel |
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อ | จำเป็น | ประเภท | คำอธิบาย |
|---|---|---|---|
date_range | ไม่ | Object | กำหนดช่วงเวลาการรายงาน ประกอบด้วย date_from และ date_to |
filters | ใช่ | Object | ตัวกรองอีเมล |
application | ใช่ | String | รหัสแอปพลิเคชัน Pushwoosh (หรือระบุ campaign, messages_ids, หรือ message_codes แทน) |
messages_codes | ใช่ | Array | รหัสข้อความ (Message codes) (หรือระบุ application, campaign, หรือ messages_ids แทน) |
campaign | ใช่ | String | รหัสแคมเปญ (Campaign code) (หรือระบุ application, messages_ids, หรือ message_codes แทน) |
messages_ids | ใช่ | Array | ID ของข้อความ (หรือระบุ application, campaign, หรือ message_codes แทน) |
link_template | จำเป็นหากระบุ application หรือ campaign | String | กรองการโต้ตอบกับลิงก์อีเมลด้วยคีย์เวิร์ด เฉพาะลิงก์ที่มีข้อความที่ระบุใน URL เท่านั้นที่จะถูกส่งคืนในการตอบกลับของ API ตัวอย่างเช่น หากอีเมลของคุณมีลิงก์เช่น https://example.com/news และ https://example.com/shop การตั้งค่า “link_template”: “shop” จะส่งคืนการโต้ตอบสำหรับ https://example.com/shop เท่านั้น |
email_content_code | ไม่ | String | ตัวระบุที่ไม่ซ้ำกันสำหรับเนื้อหาอีเมล |
params | ไม่ | Object | กำหนดตัวเลือกการตอบกลับเพิ่มเติม รวมถึง with_full_links ซึ่งจะเพิ่มรายการลิงก์เต็มพร้อมสถิติ |
ตัวอย่างคำขอ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractions' \--header 'Authorization: Api API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "filters": { "date_range": { "date_from": "string", // รูปแบบที่ต้องการ: 2000-01-01 "date_to": "string" // รูปแบบที่ต้องการ: 2000-01-01 }, "campaign": "string", // รหัสแคมเปญ (คุณสามารถระบุ application, messages_ids, หรือ message_codes แทนได้) "application": "string", // รหัสแอปพลิเคชัน (คุณสามารถระบุ campaign, messages_ids, หรือ message_codes แทนได้) "messages_ids": [], // ID ของข้อความ (คุณสามารถระบุ application, campaign, หรือ message_codes แทนได้) "messages_codes": [], // รหัสข้อความ (คุณสามารถระบุ application, campaign, หรือ message_ids แทนได้) "link_template": "string", // เทมเพลตลิงก์ (จำเป็นหากระบุ application หรือ campaign) "email_content_code": "string" // ตัวระบุที่ไม่ซ้ำกันสำหรับเนื้อหาอีเมล }, "params": { "with_full_links": true // ระบุว่าจะแสดงสถิติโดยละเอียดหรือไม่ รายการลิงก์เต็มพร้อมสถิติจะถูกส่งผ่านในอาร์เรย์ full_links }}'โค้ดการตอบกลับและตัวอย่าง
Anchor link to{ "items": [{ "template": "string", "link": "string", "title": "string", "clicks": 0, "full_links": [{ "full_link": "string", "clicks": 0 }] }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}linksInteractionsDevices
Anchor link toแสดงผู้ใช้ที่คลิกลิงก์ในอีเมล
POST https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractionsDevices
ส่วนหัว (Headers)
Anchor link to| ชื่อ | จำเป็น | คำอธิบาย |
|---|---|---|
Authorization | ใช่ | API access token จาก Pushwoosh Control Panel |
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อ | จำเป็น | ประเภท | คำอธิบาย |
|---|---|---|---|
date_range | ไม่ | Object | กำหนดช่วงเวลาการรายงาน ประกอบด้วย date_from และ date_to |
filters | ใช่ | Object | ตัวกรองอีเมล |
application | ใช่ | String | รหัสแอปพลิเคชัน Pushwoosh (หรือระบุ campaign, messages_ids, หรือ message_codes แทน) |
messages_codes | ใช่ | Array | รหัสข้อความ (Message codes) (หรือระบุ application, campaign, หรือ messages_ids แทน) |
campaign | ใช่ | String | รหัสแคมเปญ (Campaign code) (หรือระบุ application, messages_ids, หรือ message_codes แทน) |
messages_ids | ใช่ | Array | ID ของข้อความ (หรือระบุ application, campaign, หรือ message_codes แทน) |
link_template | จำเป็นหากระบุ application หรือ campaign | String | กรองการโต้ตอบกับลิงก์อีเมลด้วยคีย์เวิร์ด เฉพาะลิงก์ที่มีข้อความที่ระบุใน URL เท่านั้นที่จะถูกส่งคืนในการตอบกลับของ API ตัวอย่างเช่น หากอีเมลของคุณมีลิงก์เช่น https://example.com/news และ https://example.com/shop การตั้งค่า “link_template”: “shop” จะส่งคืนการโต้ตอบสำหรับ https://example.com/shop เท่านั้น |
email_content_code | ไม่ | String | ตัวระบุที่ไม่ซ้ำกันสำหรับเนื้อหาอีเมล |
page | ไม่ | Integer | หมายเลขหน้าสำหรับการแบ่งหน้า |
per_page | ไม่ | Integer | จำนวนผลลัพธ์ต่อหน้า (≤ 1000) |
ตัวอย่างคำขอ
Anchor link tocurl --location --request POST 'https://api.pushwoosh.com/api/v2/statistics/emails/linksInteractionsDevices' \--header 'Authorization: Api API_ACCESS_TOKEN' \--header 'Content-Type: application/json' \--data-raw '{ "filters": { "date_range": { "date_from": "string", // รูปแบบที่ต้องการ: 2000-01-01 "date_to": "string" // รูปแบบที่ต้องการ: 2000-01-01 }, "campaign": "string", // รหัสแคมเปญ (คุณสามารถระบุ application, messages_ids, หรือ message_codes แทนได้) "application": "string", // รหัสแอปพลิเคชัน (คุณสามารถระบุ campaign, messages_ids, หรือ message_codes แทนได้) "messages_ids": [], // ID ของข้อความ (คุณสามารถระบุ application, campaign, หรือ message_codes แทนได้) "messages_codes": [], // รหัสข้อความ (คุณสามารถระบุ application, campaign, หรือ message_ids แทนได้) "link_template": "string", // เทมเพลตลิงก์ (จำเป็นหากระบุ application หรือ campaign) "email_content_code": "string" // ตัวระบุที่ไม่ซ้ำกันสำหรับเนื้อหาอีเมล }, "per_page": 100, "page": 0}'โค้ดการตอบกลับและตัวอย่าง
Anchor link to{ "total": 0, "items": [{ "timestamp": "string", "link": "string", "hwid": "string" }]}{ "error": "exceeded the maximum date interval. Max interval: 30 days"}{ "error": "account not found"}bouncedEmails
Anchor link toPOST https://api.pushwoosh.com/api/v2/statistics/emails/bouncedEmails
ให้ข้อมูลเกี่ยวกับการร้องเรียนทางอีเมล, soft bounces, และ hard bounces รวมถึงวันที่, ที่อยู่อีเมล, และเหตุผลของแต่ละ bounce
การให้สิทธิ์ (Authorization)
Anchor link toการให้สิทธิ์จะจัดการผ่าน API Access Token ในส่วนหัวของคำขอ
พารามิเตอร์ในส่วนเนื้อหาของคำขอ (Request body)
Anchor link to| ชื่อพารามิเตอร์ | ประเภท | คำอธิบาย | จำเป็น |
|---|---|---|---|
application | string | รหัสแอปพลิเคชัน Pushwoosh | ใช่ |
message_code | string | รหัสข้อความ (Message code) | จำเป็นหากไม่ได้ระบุ date range หรือ campaign |
campaign | string | รหัสแคมเปญ (Campaign code) | จำเป็นหากไม่ได้ระบุ message_code หรือ date range |
date_from | string | วันที่เริ่มต้นสำหรับข้อมูลในรูปแบบ YYYY-MM-DDTHH:MM:SS.000Z (มาตรฐาน ISO 8601) | จำเป็นหากไม่ได้ระบุ message_code หรือ campaign |
date_to | string | วันที่สิ้นสุดสำหรับข้อมูลในรูปแบบ YYYY-MM-DDTHH:MM:SS.000Z (มาตรฐาน ISO 8601) | จำเป็นหากไม่ได้ระบุ message_code หรือ campaign |
per_page | int | จำนวนแถวต่อหน้า สูงสุด 5000 | ใช่ |
page | int | หมายเลขหน้า เริ่มต้นจากศูนย์ | ใช่ |
type | string | ประเภทของ bounce: Complaint, Softbounce, Hardbounce | ไม่ |
ตัวอย่างคำขอ
Anchor link to{ "application": "XXXXX-XXXXX", // จำเป็น. รหัสแอป Pushwoosh "message_code": "XXXXX-XXXXXXXXX-XXXXXXXX", // จำเป็นหากไม่ได้ระบุ campaign หรือ date range // ตัวระบุข้อความที่ไม่ซ้ำกัน "campaign": "XXXXX-XXXXX", // จำเป็นหากไม่ได้ระบุ message_code หรือ date range // รหัสแคมเปญ "date_from": "2024-07-20T00:00:00.000Z", // จำเป็นหากไม่ได้ระบุ message_code หรือ campaign // วันที่เริ่มต้นในรูปแบบ ISO 8601 "YYYY-MM-DDTHH:MM:SS.SSSZ" "date_to": "2024-07-20T00:00:00.000Z", // จำเป็นหากไม่ได้ระบุ message_code หรือ campaign // วันที่สิ้นสุดในรูปแบบ ISO 8601 "YYYY-MM-DDTHH:MM:SS.SSSZ" "per_page": 1000, // จำเป็น. จำนวนผลลัพธ์ต่อหน้า สูงสุด 5000 "page": 5, // ไม่จำเป็น. หมายเลขหน้า เริ่มต้นจากศูนย์ "type": "Softbounce" // ไม่จำเป็น. ประเภทของ bounce: Complaint, Softbounce, Hardbounce}ฟิลด์การตอบกลับ
Anchor link to| ชื่อฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
total | int | จำนวนแถวทั้งหมด |
bounced_emails | array | อาร์เรย์ของรายละเอียดอีเมลที่ตีกลับ |
├── email | string | ที่อยู่อีเมลที่ตีกลับ |
├── date | string | วันที่ของการตีกลับ (รูปแบบ: YYYY-MM-DDTHH:MM:SS.000Z) |
├── reason | string | เหตุผลของการตีกลับ |
└── type | string | ประเภทของ bounce: Complaint, Softbounce, Hardbounce |
ตัวอย่างการตอบกลับ
Anchor link to{ "total": 25, // จำนวนแถวทั้งหมด "bounced_emails": [{ "email": "example@example.com", // ที่อยู่อีเมลที่ตีกลับ "date": "2024-07-20T00:00:00.000Z", // วันที่ตีกลับในรูปแบบ ISO 8601 "reason": "Invalid recipient address", // เหตุผลของการตีกลับ "type": "Hardbounce" // ประเภทของ bounce: Complaint, Softbounce, Hardbounce }]}