ข้ามไปยังเนื้อหา

Device API

registerDevice

Anchor link to

POST https://api.pushwoosh.com/json/1.3/registerDevice

เรียกใช้ภายในจาก SDK ทำการลงทะเบียนอุปกรณ์สำหรับแอปพลิเคชัน

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
push_tokenstringPush token สำหรับอุปกรณ์
languagestringภาษาท้องถิ่นของอุปกรณ์ ต้องเป็นรหัสสองตัวอักษรพิมพ์เล็กตามมาตรฐาน ISO-639-1
hwid*stringสตริงที่ไม่ซ้ำกันเพื่อระบุอุปกรณ์ (IDFV บน iOS, ค่าที่สร้างขึ้นแบบสุ่มบน Android) เรียนรู้เพิ่มเติม
timezoneintegerออฟเซ็ตไทม์โซนเป็นวินาทีสำหรับอุปกรณ์
device_type*integerประเภทอุปกรณ์ ดูค่าที่เป็นไปได้ด้านล่าง
emailstringที่อยู่อีเมลที่จะลงทะเบียน (ใช้สำหรับผู้ใช้อีเมลแทน HWID และ push token)
tagsobjectค่าแท็กที่จะกำหนดให้กับอุปกรณ์ที่ลงทะเบียน
{
"status_code": 200,
"status_message": "OK",
"response": null
}
ตัวอย่าง
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"push_token": "dec301908b9ba8XXXXX57a58e40f96f5XXXXX2068674f5XXXXa25cdc250a2a41", // optional.
"hwid": "1CA6XXXXX-8DAC-XXXXX-XXXXX-B756288B6D3C", // required. Hardware device ID
"idfa": "AEBE52E7-0XXXXX-455A-XXXXX-E57283966239", // optional.
"timezone": 3600, // optional. Offset in seconds
"device_type": 1, // required. See the possible values below. For emails,
// use the "emails" params as described below.
"email": "email_address@domain.com", // use instead of "hwid" and "push_token" to register
// the email address for your email project
"language": "en", // optional. ISO 639-1|639-2 language code
"userId": "Alex", // optional.
"tags": { // optional. Tag values to set for the device registered
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"], // sets the list of values for Tags of List type
"DateTag": "2024-10-02 22:11", // note the time should be in UTC
"BooleanTag": true // valid values are: true, false
},
// system tags, optionals
"app_version": "1.2.3",
"device_model": "Samsung SM-G355H",
"os_version": "2.3",
// optional encryption keys for chrome/firefox
"public_key": "BNmDO4BTKEMJqaqprTf7t/HBXXXXX/orcXXXXX/scS5CFP6XXXXXHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=",
"auth_token": "RlRmCXXXXX/s7XXXXXjKFzoQ==",
// optional FCM keys for Chrome (for XMPP)
"fcm_token": "BNmDO4BTKEMJXXXXXprTf7t/XXXXXBQ/orXXXXXc/scS5CFP6zhQGIHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=",
"fcm_push_set": "RlXXXXXGM/s7XXXXXjKFzoQ=="
}
}

ประเภทอุปกรณ์ที่เป็นไปได้:

  • 1 – iOS
  • 3 – Android
  • 7 – Mac OS X
  • 8 – Windows
  • 9 – Amazon
  • 10 – Safari
  • 11 – Chrome
  • 12 – Firefox
  • 13 – Internet Explorer
  • 14 – Email
  • 16 – Baidu Android
  • 17 – Huawei
  • 18 – SMS
  • 20 – Web
  • 21 – WhatsApp
  • 22 – Line
  • 23 – Kakao Talk
  • 24 – Telegram
  • 25 – Apple Wallet
  • 26 – Google Wallet
  • 27 – Viber

การลงทะเบียนอุปกรณ์อีเมล

Anchor link to

เพื่อลงทะเบียนผู้สมัครรับอีเมลสำหรับแอปของคุณ ให้ส่งพารามิเตอร์ "email": "email_address@domain.com" ในคำขอ /registerDevice หรือ /registerEmail ของคุณดังนี้:

ตัวอย่างคำขอ
Anchor link to
{
"request":{
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"email": "email_address@domain.com", // required. Email address to register for your email project
"language": "en", // optional. ISO 639-1|639-2 language code
"userId": "Alex", // optional.
"tags": { // optional. Tag values to set for the device registered
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"], // sets the list of values for Tags of List type
"DateTag": "2024-10-02 22:11", // note the time should be in UTC
"BooleanTag": true // valid values are: true, false
}
}
}

การลงทะเบียนอุปกรณ์ WhatsApp

Anchor link to

หากต้องการลงทะเบียนอุปกรณ์ WhatsApp สำหรับแอปของคุณ ให้ปฏิบัติตามหลักเกณฑ์เหล่านี้:

  • hwid: ตรวจสอบให้แน่ใจว่าฟิลด์นี้มีคำนำหน้า whatsapp: ตามด้วยหมายเลขโทรศัพท์ในรูปแบบ E.164 (เช่น whatsapp:+0000000000) หมายเลขโทรศัพท์ต้องถูกต้อง ซึ่ง Pushwoosh จะทำการตรวจสอบ

  • Push token: ไม่จำเป็นต้องใช้ push token เนื่องจาก hwid จะทำหน้าที่เป็น push token โดยอัตโนมัติ

  • device_type: ตั้งค่าฟิลด์นี้เป็น 21 เพื่อระบุ WhatsApp เป็นแพลตฟอร์ม

ตัวอย่างคำขอ
Anchor link to
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "whatsapp:+0000000000", // required. WhatsApp prefix and valid phone number
"timezone": 3600, // optional. Time offset in seconds
"device_type": 21, // required. WhatsApp device type is 21
"language": "en", // optional. ISO 639-1|639-2 language code
"userId": "Alex", // optional. User identifier
"tags": { // optional. Tag values for custom segmentation
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"],
"DateTag": "2024-10-02 22:11", // UTC format
"BooleanTag": true
},
"app_version": "1.2.3", // optional. Application version
"device_model": "Samsung SM-G355H", // optional. Device model
"os_version": "2.3" // optional. Operating system version
}
}

การลงทะเบียนอุปกรณ์ SMS

Anchor link to

หากต้องการลงทะเบียนอุปกรณ์ SMS สำหรับแอปของคุณ ให้ปฏิบัติตามหลักเกณฑ์เหล่านี้:

  • hwid: ตรวจสอบให้แน่ใจว่าฟิลด์นี้มีหมายเลขโทรศัพท์ในรูปแบบ E.164 (เช่น +0000000000) หมายเลขโทรศัพท์ต้องถูกต้อง ซึ่ง Pushwoosh จะทำการตรวจสอบ

  • Push token: ไม่จำเป็นต้องใช้ push token เนื่องจาก hwid จะทำหน้าที่เป็น push token โดยอัตโนมัติ

  • device_type: ตั้งค่าฟิลด์ที่จำเป็นนี้เป็น 18 เพื่อกำหนดให้ SMS เป็นแพลตฟอร์ม

ตัวอย่างคำขอ
Anchor link to
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "+0000000000", // required. Valid phone number in E.164 format
"timezone": 3600, // optional. Time offset in seconds
"device_type": 18, // required. SMS device type is 18
"language": "en", // optional. ISO 639-1|639-2 language code
"userId": "Alex", // optional. User identifier
"tags": { // optional. Tag values for custom segmentation
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"],
"DateTag": "2024-10-02 22:11", // UTC format
"BooleanTag": true
},
"app_version": "1.2.3", // optional. Application version
"device_model": "Samsung SM-G355H", // optional. Device model
"os_version": "2.3" // optional. Operating system version
}
}

รหัสสถานะ:

รหัสสถานะ HTTPstatus_codeคำอธิบาย
200200ลงทะเบียนอุปกรณ์สำเร็จ
200210ข้อผิดพลาดของอาร์กิวเมนต์ ดูข้อมูลเพิ่มเติมใน status_message
400N/Aสตริงคำขอมีรูปแบบไม่ถูกต้อง
500500ข้อผิดพลาดภายใน

unregisterDevice

Anchor link to

POST https://api.pushwoosh.com/json/1.3/unregisterDevice

ลบ push token ของอุปกรณ์ อุปกรณ์ที่ไม่ได้ลงทะเบียนจะยังคงถูกนับใน Total Devices และสามารถเข้าถึงได้ด้วย In-Apps เรียกใช้ภายในจาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
{
"status_code": 200,
"status_message": "OK",
"response": null
}
ตัวอย่าง
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16XXXXXe7a6beceXXXXX530fb2" // required. Hardware device ID used in /registerDevice API
}
}

รหัสสถานะ:

รหัสสถานะ HTTPstatus_codeคำอธิบาย
200200ยกเลิกการสมัครรับข้อมูลของอุปกรณ์สำเร็จ
200210ข้อผิดพลาดของอาร์กิวเมนต์ ดูข้อมูลเพิ่มเติมใน status_message
400N/Aสตริงคำขอมีรูปแบบไม่ถูกต้อง
500500ข้อผิดพลาดภายใน

deleteDevice

Anchor link to

POST https://api.pushwoosh.com/api/v2/device-api/deleteDevice

ลบอุปกรณ์และข้อมูลที่เกี่ยวข้องทั้งหมดที่ระบุโดย HWID ที่ระบุภายในแอปพลิเคชัน ซึ่งแตกต่างจาก /unregisterDevice ซึ่งจะลบเฉพาะ push token และเก็บระเบียนอุปกรณ์ไว้ แต่ /deleteDevice จะลบอุปกรณ์ออกทั้งหมด คำขอจะถูกประมวลผลแบบอะซิงโครนัส และปลายทางจะส่งคืน 200 OK ทันทีที่คำขอลบได้รับการยอมรับเพื่อการประมวลผล

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

Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
Content-Typeใช่application/json

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

Anchor link to
ชื่อจำเป็นประเภทคำอธิบาย
applicationใช่stringรหัสแอปพลิเคชัน Pushwoosh
hwidใช่stringHardware device ID ของอุปกรณ์ที่จะลบ

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

Anchor link to
{
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16df378e7a6bece9614e1530fb2" // required. Hardware device ID of the device to delete
}

ตัวอย่างการตอบกลับ

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": null
}
รหัสสถานะ
Anchor link to
รหัสสถานะ HTTPstatus_codeคำอธิบาย
200200ยอมรับคำขอลบแล้ว
200210ข้อผิดพลาดของอาร์กิวเมนต์ ดูข้อมูลเพิ่มเติมใน status_message
400N/Aสตริงคำขอมีรูปแบบไม่ถูกต้อง
401N/Aโทเค็น Authorization หายไปหรือไม่ถูกต้อง
500500ข้อผิดพลาดภายใน

POST https://api.pushwoosh.com/json/1.3/setTags

ตั้งค่าแท็กสำหรับอุปกรณ์ เรียกใช้จาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
tags*objectอ็อบเจกต์ JSON ของแท็กที่จะตั้งค่า ส่ง “null” เพื่อลบค่า
{
"status_code": 200,
"status_message": "OK",
"response": null
}
ตัวอย่าง
{
"request":{
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16XXXXXe7a6becXXXXXe1530fb2", // required. Hardware device ID used in /registerDevice API
"tags": { // required.
"StringTag": "string value",
"IntegerTag": 42,
"ListTag": ["string1", "string2"], // sets the list of values for Tags of List type
"DateTag": "2024-10-02 22:11", // note the time is in UTC
"BooleanTag": true // valid values are - true, false
}
}
}

การเพิ่มค่าแท็ก Integer

Anchor link to

เพื่อเพิ่มค่าของแท็ก Integer ให้ใช้พารามิเตอร์ operation ที่มีค่า “increment” ดังนี้:

{
"request":{
"application": "12345-67890", // required. Pushwoosh application code
"hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. hardware device ID used in /registerDevice API
"tags": { // required.
"Level": { // Tag name
"operation": "increment", // overwrites the integer tag in increments of the following value
"value": 1 // increment for the tag value
}
}
}
}

การลดค่าแท็ก Integer

Anchor link to

เพื่อลดค่า ให้ใช้ตัวเลขติดลบเป็นค่าสำหรับการดำเนินการ “increment” (-1, -2, -3, -n):

{
"request":{
"application": "12345-67890", // required. Pushwoosh application code
"hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. Hardware device ID used in /registerDevice API
"tags": { // required
"Level": { // Tag name
"operation": "increment", // overwrites the integer tag in decrement of the following value
"value": -1 // decrement for the tag value
}
}
}
}

การเพิ่มค่าแท็ก List

Anchor link to

เพื่อขยายแท็ก List ด้วยค่าใหม่ ให้ใช้พารามิเตอร์ operation ที่มีค่า “append” ดังนี้:

ตัวอย่าง
{
"request": {
"hwid": "3d124a79XXXXf189XXXX7dfd9XXXXafd", // required. Hardware device ID used in /registerDevice API
"application": "6XXXX-XXXX3", // required. Pushwoosh application code
"tags": { // required.
"ListTag": { // Tag name
"operation": "append", // appends following values to the Tag's list of values
"value": [ // values to append
"tag2",
"tag3"
]
}
}
}
}

การลบค่าแท็ก List

Anchor link to

หากต้องการลบค่าบางค่าออกจากแท็ก List ให้ใช้การดำเนินการ “remove” ดังนี้:

{
"request":{
"application": "12345-67890", // required. Pushwoosh application code
"hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. Hardware device ID used in /registerDevice API
"tags": { // required.
"In-App Product": { // Tag name
"operation": "remove", // removes the following values from the list tag
"value": "outwear_02" // value or values to remove
}
}
}
}

การตั้งค่าแท็กโดยใช้ UserID

Anchor link to

หากต้องการตั้งค่าแท็กสำหรับอุปกรณ์ทั้งหมดที่เชื่อมโยงกับ User ID ที่ต้องการ ให้ใช้พารามิเตอร์ “userId” แทน “hwid”

ตัวอย่าง
{
"request":{
"application": "AAAAA-BBBBB", // Pushwoosh app code
"userId": "some_user", // user ID you'd like to set tags for
"tags": { // tags and values to set
"Language": "es"
}
}
}

รหัสสถานะ:

รหัสสถานะ HTTPstatus_codeคำอธิบาย
200200ตั้งค่าแท็กสำเร็จแล้ว
200210ข้อผิดพลาดของอาร์กิวเมนต์ ดูข้อมูลเพิ่มเติมใน status_message
400N/Aสตริงคำขอมีรูปแบบไม่ถูกต้อง
500500ข้อผิดพลาดภายใน

POST https://api.pushwoosh.com/json/1.3/getTags

ดึงรายการแท็กพร้อมค่าที่สอดคล้องกันสำหรับอุปกรณ์ที่ระบุ

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
userIdstringUser ID ที่จะใช้แทน “hwid” หากใช้ร่วมกับ “hwid” จะใช้ “hwid” เป็นหลัก
hwidstringHardware device ID ที่ใช้ในคำขอ /registerDevice
{
"status_code": 200,
"status_message": "OK",
"response": {
"result": {
"Language": "fr"
}
}
}
ตัวอย่าง
{
"request":{
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "HWID", // optional. Hardware device ID used in /registerDevice API
"userId": "USER_ID" // optional. Can be used instead of "hwid" to retrieve tags for a specific user
}
}

POST https://api.pushwoosh.com/json/1.3/setBadge

ส่งค่า badge ปัจจุบันสำหรับอุปกรณ์ไปยัง Pushwoosh เรียกใช้ภายในจาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
badge*integerbadge ปัจจุบันบนแอปพลิเคชัน
{
"status_code": 200,
"status_message": "OK"
}
ตัวอย่าง
{
"request":{
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16dXXXXe7a6XXXX9614XXXX0fb2", // required. Hardware device ID used in /registerDevice API
"badge": 4 // required. Current badge on the application
}
}

เรียกใช้จาก SDK ภายใน ส่งค่า badge ปัจจุบันสำหรับอุปกรณ์ไปยัง Pushwoosh ซึ่งจะเกิดขึ้นภายในเมื่อแอปเปลี่ยนค่า badge บนอุปกรณ์ iOS ช่วยให้การเพิ่มค่า badge อัตโนมัติทำงานได้อย่างถูกต้อง

applicationOpen

Anchor link to

POST https://api.pushwoosh.com/json/1.3/applicationOpen

ลงทะเบียนอีเวนต์การเปิดแอป เรียกใช้ภายในจาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
{
"status_code": 200,
"status_message": "OK"
}
ตัวอย่าง
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16dXXXXe7a6XXXX9614eXXXXfb2" // required. Hardware device ID used in /registerDevice API
}
}

POST https://api.pushwoosh.com/json/1.3/pushStat

ลงทะเบียนอีเวนต์การเปิด push เรียกใช้ภายในจาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
userIdstringUser ID ที่จะเชื่อมโยงกับอีเวนต์การเปิด push
hashstringแท็กแฮชที่ได้รับในการแจ้งเตือนแบบพุช (พารามิเตอร์ “p” ของเพย์โหลดพุช)
{
"status_code": 200,
"status_message": "OK",
"response": null
}
ตัวอย่าง
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16dfXXXX7a6beXXXX14e1530fb2", // required. Hardware device ID used in /registerDevice API
"userId": "USER012345", // optional. The user id to associate with the push open event
"hash": "HASH_TAG" // optional. Hash tag received in push notification
// ("p" parameter in the push payload)
}
}

messageDeliveryEvent

Anchor link to

POST https://api.pushwoosh.com/json/1.3/messageDeliveryEvent

ลงทะเบียนอีเวนต์การส่ง push สำหรับอุปกรณ์ เรียกใช้ภายในจาก SDK

ส่วนหัวของคำขอ
Anchor link to
ชื่อจำเป็นค่าคำอธิบาย
Authorizationใช่Token XXXXAPI Device Token เพื่อเข้าถึง Device API แทนที่ XXXX ด้วย Device API token จริงของคุณ
เนื้อหาของคำขอ
Anchor link to
ชื่อประเภทคำอธิบาย
application*stringรหัสแอปพลิเคชัน Pushwoosh
hwid*stringHardware device ID ที่ใช้ในคำขอ /registerDevice
hashstringแท็กแฮชที่ได้รับในการแจ้งเตือนแบบพุช (พารามิเตอร์ “p” ของเพย์โหลดพุช)
{
"status_code": 200,
"status_message": "OK",
"response": null
}
ตัวอย่าง
{
"request": {
"application": "XXXXX-XXXXX", // required. Pushwoosh application code
"hwid": "8f65b16dfXXXX7a6bece9XXXX1530fb2", // required. Hardware device ID used in /registerDevice API
"hash": "HASH_TAG" // optional. Hash tag received in push notification
// ("p" parameter in the push payload)
}
}