디바이스 API
registerDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/registerDevice
SDK에서 내부적으로 호출됩니다. 애플리케이션에 디바이스를 등록합니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| push_token | string | 디바이스의 푸시 토큰입니다. |
| language | string | 디바이스의 언어 로케일입니다. ISO-639-1 표준에 따라 소문자 두 글자 코드여야 합니다. |
| hwid* | string | 디바이스를 식별하는 고유 문자열입니다(iOS에서는 IDFV, Android에서는 무작위로 생성된 값). 자세히 알아보기 |
| timezone | integer | 디바이스의 시간대 오프셋(초 단위)입니다. |
| device_type* | integer | 디바이스 타입. 아래에서 가능한 값을 확인하세요. |
| string | 등록할 이메일 주소입니다(HWID 및 푸시 토큰 대신 이메일 사용자에 사용). | |
| tags | object | 등록된 디바이스에 할당할 태그 값입니다. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "push_token": "dec301908b9ba8XXXXX57a58e40f96f5XXXXX2068674f5XXXXa25cdc250a2a41", // 선택 사항. "hwid": "1CA6XXXXX-8DAC-XXXXX-XXXXX-B756288B6D3C", // 필수. 하드웨어 디바이스 ID "idfa": "AEBE52E7-0XXXXX-455A-XXXXX-E57283966239", // 선택 사항. "timezone": 3600, // 선택 사항. 오프셋(초 단위) "device_type": 1, // 필수. 아래에서 가능한 값을 확인하세요. 이메일의 경우, // 아래 설명된 대로 "emails" 파라미터를 사용하세요. "email": "email_address@domain.com", // "hwid"와 "push_token" 대신 사용하여 등록 // 이메일 프로젝트의 이메일 주소 "language": "en", // 선택 사항. ISO 639-1|639-2 언어 코드 "userId": "Alex", // 선택 사항. "tags": { // 선택 사항. 등록된 디바이스에 설정할 태그 값 "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // 리스트 타입 태그에 대한 값 목록을 설정합니다 "DateTag": "2024-10-02 22:11", // 시간은 UTC여야 합니다 "BooleanTag": true // 유효한 값: true, false },
// 시스템 태그, 선택 사항 "app_version": "1.2.3", "device_model": "Samsung SM-G355H", "os_version": "2.3",
// 선택 사항인 chrome/firefox 암호화 키 "public_key": "BNmDO4BTKEMJqaqprTf7t/HBXXXXX/orcXXXXX/scS5CFP6XXXXXHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=", "auth_token": "RlRmCXXXXX/s7XXXXXjKFzoQ==",
// 선택 사항인 Chrome용 FCM 키 (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
- 14 – Email
- 17 – Huawei
- 18 – SMS
- 21 – WhatsApp
이메일 디바이스 등록하기
Anchor link to앱에 이메일 구독자를 등록하려면, /registerDevice 또는 /registerEmail 요청에서 다음과 같이 "email": "email_address@domain.com" 파라미터를 전송하세요:
요청 예시
Anchor link to{ "request":{ "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "email": "email_address@domain.com", // 필수. 이메일 프로젝트에 등록할 이메일 주소 "language": "en", // 선택 사항. ISO 639-1|639-2 언어 코드 "userId": "Alex", // 선택 사항. "tags": { // 선택 사항. 등록된 디바이스에 설정할 태그 값 "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // 리스트 타입 태그에 대한 값 목록을 설정합니다 "DateTag": "2024-10-02 22:11", // 시간은 UTC여야 합니다 "BooleanTag": true // 유효한 값: true, false } }}WhatsApp 디바이스 등록하기
Anchor link to앱에 WhatsApp 디바이스를 등록하려면 다음 가이드라인을 따르세요:
-
hwid: 이 필드에는
whatsapp:접두사 뒤에 E.164 형식의 전화번호가 포함되어야 합니다(예:whatsapp:+0000000000). 전화번호는 유효해야 하며, Pushwoosh가 이를 확인합니다. -
푸시 토큰:
hwid가 자동으로 푸시 토큰으로 작동하므로 푸시 토큰은 필요하지 않습니다. -
device_type: 이 필드를 21로 설정하여 플랫폼을 WhatsApp으로 지정합니다.
요청 예시
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "whatsapp:+0000000000", // 필수. WhatsApp 접두사 및 유효한 전화번호 "timezone": 3600, // 선택 사항. 시간 오프셋(초 단위) "device_type": 21, // 필수. WhatsApp 디바이스 타입은 21입니다 "language": "en", // 선택 사항. ISO 639-1|639-2 언어 코드 "userId": "Alex", // 선택 사항. 사용자 식별자 "tags": { // 선택 사항. 사용자 지정 세분화를 위한 태그 값 "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], "DateTag": "2024-10-02 22:11", // UTC 형식 "BooleanTag": true }, "app_version": "1.2.3", // 선택 사항. 애플리케이션 버전 "device_model": "Samsung SM-G355H", // 선택 사항. 디바이스 모델 "os_version": "2.3" // 선택 사항. 운영 체제 버전 }}SMS 디바이스 등록하기
Anchor link to앱에 SMS 디바이스를 등록하려면 다음 가이드라인을 따르세요:
-
hwid: 이 필드에는 E.164 형식의 전화번호가 포함되어야 합니다(예:
+0000000000). 전화번호는 유효해야 하며, Pushwoosh가 이를 확인합니다. -
푸시 토큰:
hwid가 자동으로 푸시 토큰으로 작동하므로 푸시 토큰은 필요하지 않습니다. -
device_type: 이 필수 필드를 18로 설정하여 플랫폼을 SMS로 지정합니다.
요청 예시
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "+0000000000", // 필수. E.164 형식의 유효한 전화번호 "timezone": 3600, // 선택 사항. 시간 오프셋(초 단위) "device_type": 18, // 필수. SMS 디바이스 타입은 18입니다 "language": "en", // 선택 사항. ISO 639-1|639-2 언어 코드 "userId": "Alex", // 선택 사항. 사용자 식별자 "tags": { // 선택 사항. 사용자 지정 세분화를 위한 태그 값 "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], "DateTag": "2024-10-02 22:11", // UTC 형식 "BooleanTag": true }, "app_version": "1.2.3", // 선택 사항. 애플리케이션 버전 "device_model": "Samsung SM-G355H", // 선택 사항. 디바이스 모델 "os_version": "2.3" // 선택 사항. 운영 체제 버전 }}상태 코드:
| HTTP 상태 코드 | status_code | 설명 |
|---|---|---|
| 200 | 200 | 디바이스가 성공적으로 등록되었습니다 |
| 200 | 210 | 인수 오류. 자세한 내용은 status_message를 참조하세요. |
| 400 | N/A | 잘못된 형식의 요청 문자열 |
| 500 | 500 | 내부 오류 |
unregisterDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/unregisterDevice
디바이스의 푸시 토큰을 제거합니다. 등록 해제된 디바이스는 여전히 총 디바이스 수에 포함되며 인앱 메시지로 도달할 수 있습니다. SDK에서 내부적으로 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16XXXXXe7a6beceXXXXX530fb2" // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID }}상태 코드:
| HTTP 상태 코드 | status_code | 설명 |
|---|---|---|
| 200 | 200 | 디바이스 구독이 성공적으로 해지되었습니다 |
| 200 | 210 | 인수 오류. 자세한 내용은 status_message를 참조하세요. |
| 400 | N/A | 잘못된 형식의 요청 문자열 |
| 500 | 500 | 내부 오류 |
setTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setTags
디바이스에 대한 태그 값을 설정합니다. SDK에서 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
| tags* | object | 설정할 태그의 JSON 객체. 값을 제거하려면 “null”을 보내세요. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request":{ "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16XXXXXe7a6becXXXXXe1530fb2", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "tags": { // 필수. "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // 리스트 타입 태그에 대한 값 목록을 설정합니다 "DateTag": "2024-10-02 22:11", // 시간은 UTC입니다 "BooleanTag": true // 유효한 값 - true, false } }}정수 태그 값 증가시키기
Anchor link to정수 태그의 값을 증가시키려면, operation 파라미터를 “increment” 값과 함께 다음과 같이 사용하세요:
{ "request":{ "application": "12345-67890", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "tags": { // 필수. "Level": { // 태그 이름 "operation": "increment", // 다음 값만큼 정수 태그를 덮어씁니다 "value": 1 // 태그 값에 대한 증가분 } } }}정수 태그 값 감소시키기
Anchor link to감소시키려면, “increment” 작업의 값으로 음수(-1, -2, -3, -n)를 사용하세요:
{ "request":{ "application": "12345-67890", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "tags": { // 필수 "Level": { // 태그 이름 "operation": "increment", // 다음 값만큼 정수 태그를 덮어씁니다 "value": -1 // 태그 값에 대한 감소분 } } }}리스트 태그 값 추가하기
Anchor link to리스트 태그에 새 값을 추가하려면, operation 파라미터를 “append” 값과 함께 다음과 같이 사용하세요:
{ "request": { "hwid": "3d124a79XXXXf189XXXX7dfd9XXXXafd", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "application": "6XXXX-XXXX3", // 필수. Pushwoosh 애플리케이션 코드 "tags": { // 필수. "ListTag": { // 태그 이름 "operation": "append", // 다음 값들을 태그의 값 목록에 추가합니다 "value": [ // 추가할 값 "tag2", "tag3" ] } } }}리스트 태그 값 제거하기
Anchor link to리스트 태그에서 일부 값을 제거하려면, “remove” 작업을 다음과 같이 사용하세요:
{ "request":{ "application": "12345-67890", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "tags": { // 필수. "In-App Product": { // 태그 이름 "operation": "remove", // 다음 값들을 리스트 태그에서 제거합니다 "value": "outwear_02" // 제거할 값 또는 값들 } } }}UserID로 태그 설정하기
Anchor link to특정 사용자 ID에 연결된 모든 디바이스에 태그를 설정하려면, “hwid” 대신 “userId” 파라미터를 사용하세요.
{ "request":{ "application": "AAAAA-BBBBB", // Pushwoosh 앱 코드 "userId": "some_user", // 태그를 설정하려는 사용자 ID "tags": { // 설정할 태그와 값 "Language": "es" } }}상태 코드:
| HTTP 상태 코드 | status_code | 설명 |
|---|---|---|
| 200 | 200 | 태그가 성공적으로 설정되었습니다 |
| 200 | 210 | 인수 오류. 자세한 내용은 status_message를 참조하세요. |
| 400 | N/A | 잘못된 형식의 요청 문자열 |
| 500 | 500 | 내부 오류 |
getTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/getTags
특정 디바이스에 대한 태그 목록과 해당 값을 검색합니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| userId | string | ”hwid” 대신 사용할 사용자 ID입니다. “hwid”와 함께 사용될 경우 “hwid”가 우선합니다. |
| hwid | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
{ "status_code": 200, "status_message": "OK", "response": { "result": { "Language": "fr" } }}{ "request":{ "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "HWID", // 선택 사항. /registerDevice API에서 사용된 하드웨어 디바이스 ID "userId": "USER_ID" // 선택 사항. 특정 사용자의 태그를 검색하기 위해 "hwid" 대신 사용할 수 있습니다 }}setBadge
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setBadge
디바이스의 현재 배지 값을 Pushwoosh로 보냅니다. SDK에서 내부적으로 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
| badge* | integer | 애플리케이션의 현재 배지입니다. |
{ "status_code": 200, "status_message": "OK"}{ "request":{ "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16dXXXXe7a6XXXX9614XXXX0fb2", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "badge": 4 // 필수. 애플리케이션의 현재 배지 }}SDK에서 내부적으로 호출됩니다. 디바이스의 현재 배지 값을 Pushwoosh로 보냅니다. 이는 앱이 iOS 디바이스에서 배지 값을 변경할 때 내부적으로 발생합니다. 자동 증가 배지가 제대로 작동하도록 합니다.
applicationOpen
Anchor link toPOST https://api.pushwoosh.com/json/1.3/applicationOpen
앱 열기 이벤트를 등록합니다. SDK에서 내부적으로 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
{ "status_code": 200, "status_message": "OK"}{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16dXXXXe7a6XXXX9614eXXXXfb2" // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID }}pushStat
Anchor link toPOST https://api.pushwoosh.com/json/1.3/pushStat
푸시 열기 이벤트를 등록합니다. SDK에서 내부적으로 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
| userId | string | 푸시 열기 이벤트와 연결할 사용자 ID입니다. |
| hash | string | 푸시 알림에서 받은 해시 태그입니다(푸시 페이로드의 “p” 파라미터). |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16dfXXXX7a6beXXXX14e1530fb2", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "userId": "USER012345", // 선택 사항. 푸시 열기 이벤트와 연결할 사용자 ID "hash": "HASH_TAG" // 선택 사항. 푸시 알림에서 받은 해시 태그 // (푸시 페이로드의 "p" 파라미터) }}messageDeliveryEvent
Anchor link toPOST https://api.pushwoosh.com/json/1.3/messageDeliveryEvent
디바이스에 대한 푸시 전달 이벤트를 등록합니다. SDK에서 내부적으로 호출됩니다.
요청 헤더
Anchor link to| 이름 | 필수 | 값 | 설명 |
|---|---|---|---|
| Authorization | 예 | Token XXXX | 디바이스 API에 액세스하기 위한 API 디바이스 토큰입니다. XXXX를 실제 디바이스 API 토큰으로 교체하세요. |
요청 본문
Anchor link to| 이름 | 타입 | 설명 |
|---|---|---|
| application* | string | Pushwoosh 애플리케이션 코드 |
| hwid* | string | /registerDevice 요청에서 사용된 하드웨어 디바이스 ID입니다. |
| hash | string | 푸시 알림에서 받은 해시 태그입니다(푸시 페이로드의 “p” 파라미터). |
{ "status_code": 200, "status_message": "OK", "response": null} { "request": { "application": "XXXXX-XXXXX", // 필수. Pushwoosh 애플리케이션 코드 "hwid": "8f65b16dfXXXX7a6bece9XXXX1530fb2", // 필수. /registerDevice API에서 사용된 하드웨어 디바이스 ID "hash": "HASH_TAG" // 선택 사항. 푸시 알림에서 받은 해시 태그 // (푸시 페이로드의 "p" 파라미터) }}