Download OpenAPI specification:Download
The definition of Errors:
NOT_AUTHORIZED - You don't have the permission to access APIs. Maybe you're using wrong Client Key.
PERMISSION_DENIED - You don't have the permission to execute the task.
INVALID_PARAM - Your HTTP parameter is invalid or missing.
INVALID_REQUEST - Your HTTP request is invalid.
LIMIT_EXCEEDED - Your account or application limit reached.
DUPLICATION - The item is existed.
NOT_FOUND - We can not find your item.
UNKNOWN_ERROR - Internal server error (An unknown error has occurred). Please contact with us in this case.
View the details of a single app
Return application object
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/application"
Configure platform for a single app.
Support iOS and ANDROID via Rest API only. For other platforms, you have to use our Dashboard to setting.
| platform | string Enum: "ios" "android" The platform identifier. |
| fcm_key | string
|
| apns_pem | string
|
| apns_env | string
|
Return success status
Live Server
View the details of all attributes of a single app
Attribute list was retrieved successfully
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/attribute"
Add a new attribute to one of your apps.
| name required | string <= 50 characters ^[a-z0-9_]+$ Name of attribute |
| type required | string Enum: "boolean" "string" "array" "number" Attribute type |
| label | string <= 100 characters Label for this attribute |
Return success status
Live Server
Edit an attribute of one of your apps.
| name required | string <= 50 characters ^[a-z0-9_]+$ Name of attribute |
| new_name | string <= 50 characters ^[a-z0-9_]+$ New name for replacement |
| label | string <= 100 characters New Label for replacement |
Return success status
Live Server
Delete an attribute of app.
| name required | string <= 100 characters ^[a-z0-9_]+$ Name of attribute |
Return success status
Live Server
Add a realtime event data to use in trigger push notification.
| custom_id required | string The unique key for your event data. |
| your_event_field_1 | boolean Example: true |
| your_event_field_2 | integer Example: 123 |
| your_event_field_3 | string Example: 'your string' |
| your_event_field_4 | array Example: ['your value 1', 'your value 2'] |
| your_event_field_5.date | integer Example: 1569899799 - Unix Timestamp |
Return response status
Live Server
Register a new player to one of your apps.
If a player is already registered with the specified identifier, then this will update the existing player record instead of creating a new one.
| device_type required | string Enum: "ios" "android" "other" The device's platform. |
| device_id required | string The device identifie. |
| device_token | string The device push token.
|
| mobile_number | string^[+]*[0-9]{1,4}[/0-9]{10,15}$ The mobile number. Formatting for phone numbers entails the following: Example: +84912345678 |
| device_os | string Device operating system version. Example: 12.1.4 |
| device_model | string Device operating system version. Example: iPhone5,1 |
| app_version | string Your application's version. Example: 1.2.1 |
| language | string Language code in the ISO Language Code (first 2 characters). Example: vi |
| country | string Country code in the ISO 3166-1 Alpha 2 format. Example: vn |
| custom_user_id | string A custom user ID. Example: 98765 |
| any_parameter_name | string <lowercase> [ 2 .. 100 ] characters Default: "Your custom parameter" Custom parameter for the player. Example: |
Return player ID
Live Server
Update an existing player in one of your apps.
| player_id required | string The player ID |
| device_token | string The device push token.
|
| app_version | string Your application's version. Example: 1.2.1 |
| my_gender | string Your custom parameter |
| my_age | integer Your custom parameter |
Return success status
Live Server
Update a player's session information.
This method should be called when a player opens your app after they are already registered.
This method will automatically increment the player's SESSION_COUNT.
By default, if a player is inactive for 30 minutes or more, any future activity is attributed to a new session. Users that leave your site and return within 30 minutes are counted as part of the original session.
| player_id required | string The player ID |
Return success status
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "POST" "https://api.pushdi.com/player/YOUR_PLAYER_ID/on_session"
View the details of multiple notifications.
| title | string The message title of notification |
| tag | string The tag of notification |
| limit | integer Default: 10 The number of items per page |
| page | integer Default: 1 The pagination page number |
| start_on | integer The start date in |
| end_on | integer The end date in |
Return notification list
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/notification"
Send notification to segmentations or individual players.
| options | object Push Scope object |
| type required | string Default: "mobile_push" Enum: "mobile_push" "web_push" "sms" "facebook" The notification type |
| headings | string
|
| contents required | string The content of message |
| status | string Default: "waiting" Enum: "new" "waiting" Status of notification. A new notification will wait for updating to |
| platforms | Array of strings (NativePlatform) Items Enum: "ios" "android"
|
| player_ids | array The filters by player ids. It is useful for sending realtime messages by your logic. Example: |
| filters | array The target filters. Formatting Filters: |
| data | array A custom map of data that is passed back to your app. Example:
|
| tags | array Dynamic tags used for group notification. Example: |
| schedule | integer Default: 0 The schedule in |
Return notification ID
Live Server
Send multiple notifications to segmentations or individual players.
| notifications | Array of objects (NewNotification) Array of notifications |
Return notification ID
Live Server
Update a notification information, work only for a new notification (notification has new status).
| notification_id required | string The ID of notification |
| options | object Push Scope object |
| type required | string Default: "mobile_push" Enum: "mobile_push" "web_push" "sms" "facebook" The notification type |
| headings | string
|
| contents required | string The content of message |
| status | string Default: "waiting" Enum: "new" "waiting" Status of notification. A new notification will wait for updating to |
| platforms | Array of strings (NativePlatform) Items Enum: "ios" "android"
|
| player_ids | array The filters by player ids. It is useful for sending realtime messages by your logic. Example: |
| filters | array The target filters. Formatting Filters: |
| data | array A custom map of data that is passed back to your app. Example:
|
| tags | array Dynamic tags used for group notification. Example: |
| schedule | integer Default: 0 The schedule in |
Return notification ID
Live Server
Cancel a notification of your app.
| notification_id required | string The ID of notification |
Return success status
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "DELETE" "https://api.pushdi.com/notification/YOUR_NOTIFICATION_ID"
View the details of a single notification.
| notification_id required | string The ID of notification |
Return notification object
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/notification/YOUR_NOTIFICATION_ID"
Track when users open a notification.
| opened | boolean Set to |
| player_id | string Your player id. |
| platform | string Your platform |
Return success status
Live Server
View the details of multiple segments.
| limit | integer Default: 10 The number of items per page |
| page | integer Default: 1 The pagination page number |
Return segmentation list
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/segment"
Create segment to used in send notification.
| name required | string <= 100 characters The segmentation title |
| description | string <= 500 characters The segmentation description. |
| filters required | array The target filters. Formatting Filters: |
Return segmentation ID
Live Server
Update a segmentation of your app.
| segment_id required | string The segmentation ID |
| name required | string <= 100 characters The segmentation title |
| description | string <= 500 characters The segmentation description. |
| filters required | array The target filters. Formatting Filters: |
Return success status
Live Server
Delete a segmentation of your app.
| segment_id required | string The segmentation ID |
Return success status
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "DELETE" "https://api.pushdi.com/segment/YOUR_SEGMENT_ID"
View the details of a segmentation.
| segment_id required | string The segmentation ID |
Return segmentation object
Live Server
curl --header "Content-Type: application/json" \ --header "client-key: CLIENT-KEY" \ --request "GET" "https://api.pushdi.com/segment/YOUR_SEGMENT_ID"