User centric API
registerUser
Anchor link toPOST https://api.pushwoosh.com/json/1.3/registerUser
Associates external User ID with a specified device.
Request headers
Anchor link to| Name | Required | Value | Description |
|---|---|---|---|
| Authorization | Yes | Token XXXX | API Device Token to access Device API. Replace XXXX with your actual Device API token. |
Request body
Anchor link to| Name | Required | Type | Description |
|---|---|---|---|
| userId | No | string | User ID to associate with a device. If empty, use hwid. |
| application | Yes | string | Pushwoosh application code |
| hwid | Yes | string | Pushwoosh HWID |
| tz_offset | No | integer | Timezone offset in seconds for the device. |
| device_type | No | integer | Device type. See possible values in /registerDevice. |
Can be used later in /createMessage API call (the users parameter).
You can call this function before you have the push token and before the /registerDevice call.
Request example
Anchor link to{ "request": { "userId": "user_3078a", // optional. If empty, use hwid "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16df378e7a6bece9614e1530fb2", // required. Hardware device ID "tz_offset": -3600, // optional. Timezone offset in seconds "device_type": 3 // optional. Device type, see /registerDevice // for device types }}Response example
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}deleteUser
Anchor link toPOST https://api.pushwoosh.com/api/v2/device-api/deleteUser
Deletes a user and all devices associated with the specified User ID within the application. The request is processed asynchronously, and the endpoint returns 200 OK as soon as the delete request has been accepted for processing.
Request headers
Anchor link to| Name | Required | Value | Description |
|---|---|---|---|
| Authorization | Yes | Token XXXX | API Device Token to access Device API. Replace XXXX with your actual Device API token. |
| Content-Type | Yes | application/json |
Request body
Anchor link to| Name | Required | Type | Description |
|---|---|---|---|
| application | Yes | string | Pushwoosh application code |
| user_id | Yes | string | User ID to delete. All devices associated with this user in the specified application will be removed. |
Request example
Anchor link to{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "user_id": "user_3078a" // required. User ID to delete}Response example
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}Status codes
Anchor link to| HTTP Status code | status_code | Description |
|---|---|---|
| 200 | 200 | Delete request accepted |
| 200 | 210 | Argument error. See status_message for more info. |
| 400 | N/A | Malformed request string |
| 401 | N/A | Missing or invalid Authorization token |
| 500 | 500 | Internal error |
postEvent
Anchor link toPOST https://api.pushwoosh.com/json/1.3/postEvent
Triggers an event.
Request headers
Anchor link to| Name | Required | Value | Description |
|---|---|---|---|
| Authorization | Yes | Token XXXX | API Device Token to access Device API. Replace XXXX with your actual Device API token. |
Request body
Anchor link to| Name | Required | Type | Description |
|---|---|---|---|
| hwid | Yes | string | Hardware device ID used in a /registerDevice request. Can be used along with ‘userId’ to identify a user who has triggered an event. |
| application | Yes | string | Pushwoosh application code |
| event | Yes | string | Event name exactly as created in Pushwoosh Control Panel. |
| attributes | Yes | object | JSON object with the event attributes. Leave it empty if no attributes need to be passed. |
| timestampUTC | No | integer | Timestamp in UTC. |
| timestampCurrent | No | integer | Timestamp in local time. |
| userId | Yes | string | User ID associated with a user who has triggered the event. Can be replaced by or used along with an HWID. |
| device_type | No | integer | See possible values |
The event’s name in the request must match the event name in Pushwoosh Control Panel. Note that “attributes” property may be empty (but not omitted) in case the event has no attributes.
Request example
Anchor link to{ "request":{ "hwid": "8f65b16df378e7a6bece9614e1530fb2", // required. Hardware device ID used in a /registerDevice API. // Can be used along with an userId to identify a // user who has triggered an event. "application": "XXXXX-XXXXX", // required. Pushwoosh application code "event": "activityCompleted", // required. Event name exactly as created in Pushwoosh Control Panel "attributes": { // required. Leave empty if no attributes need to be passed. "login": "facebook", "success": "yes", "internet": "wifi" }, "timestampUTC": 1435228403, // optional. Timestamp in UTC "timestampCurrent": 1435253603, // optional. Timestamp in local time "userId": "someuser@user.com", // required. A user id which is used for identification of // users on multiple devices. Can be replaced by // or used along with an HWID. "device_type": 1 // optional. }}Response example
Anchor link to{ "status_code": 200, "status_message": "OK", "response": { "code": "61BC9-84DD0" }}