App configuration API
The App configuration API sets up the platforms of an existing Pushwoosh application, such as the iOS key file or the Android FCM service account. All platforms use the same /configureApplication method, and the sections below list the request parameters for each platform. To create the application itself, use the Applications API.
configureApplication for iOS
Anchor link toConfigures iOS platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth | string | API access token from Pushwoosh Control Panel |
| application | string | Pushwoosh application code |
| device_type | integer | Must be 1 for iOS |
| ios_key_management_type | string | ”manual” |
| ios_key_file | string | Base64-encoded iOS key file content |
| ios_key_password | string | Password for iOS key file |
| ios_gateway | integer | ”0” for sandbox, “1” for production |
| ios_framework | string | Possible values: “native”, “cordova”, “titanium” |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": true, "amazon": false, "android": false, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 1, // required. 1 for iOS "ios_key_management_type": "manual", // required. "manual" "ios_key_file": "MIIMY...BAQ==", // required. base64-encoded iOS key file content "ios_key_password": "password", // required. "ios_gateway": 1, // required. "0" (sandbox) | "1" (production) "ios_framework": "native" // required. possible values: "native", "cordova", "titanium", // "marmalade", "adobeAir", "corona", "xamarin", // "phoneGapBuild", "triggerIO", "unity" }}configureApplication for Android
Anchor link toConfigures Android platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from your Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 3 for Android. |
| android_framework* | string | Android framework. Possible values: native, cordova, marmalade, adobeAir, corona, xamarin, phoneGapBuild, triggerIO, titanium, unity. |
| android_fcm_service_account* | object | FCM service account key (JSON file generated in Firebase project settings). |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": true, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "Z2PLR....IRwTqHwCr", "application": "87E33-XXXXX", "device_type": 3, "android_fcm_service_account": { "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "client_email": "****@foobar.iam.gserviceaccount.com", "client_id": "115********6584854983", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-zffgu%40foobar.iam.gserviceaccount.com", "private_key": "-----BEGIN PRIVATE KEY-----\nuH/OU/fIL+i6Wm8as...\n-----END PRIVATE KEY-----\n", "private_key_id": "e3749********6d9", "project_id": "app-android", "token_uri": "https://oauth2.googleapis.com/token", "type": "service_account", "universe_domain": "googleapis.com" }, "android_framework": "native" }}configureApplication for Mac OS X
Anchor link toConfigures Mac OS X platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 7 for Mac OS X. |
| macos_key_management_type* | string | Only “manual” type is available currently. |
| macos_cert_file | string | Base64-encoded Mac OS X certificate file content. |
| macos_key_file | string | Base64-encoded Mac OS X key file content. |
| macos_key_password | string | Key file password. |
| macos_gateway* | integer | Push gateway. “0” for sandbox, “1” for production. |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": true, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request":{ "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 7, // required. 7 for Mac OS X "macos_key_management_type": "manual", // required. "manual" "macos_cert_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // optional. Base64-encoded content of Mac OS X certificate file "macos_key_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // optional. Base64-encoded content of Mac OS X key file "macos_key_password": "PASSWORD", // optional. Key file password "macos_gateway": 1 // required. push gateway. "0" for sandbox or "1" for production }}configureApplication for Windows
Anchor link toConfigures Windows platforms for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 8 for Windows. |
| wns_psid* | string | Package security identifier from Windows Store for the app. Starts with “ms-app://“. |
| wns_secret* | string | Client Secret from Windows Store for the app. |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": true } }}{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 8, // required. 8 for Windows "wns_psid": "ms-app://…", // required. package security identifier of the app from Windows Store "wns_secret": "CLIENT_SECRET" // required. Windows client secret }}configureApplication for Amazon
Anchor link toConfigures Amazon platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 9 for Amazon. |
| adm_cid* | string | Amazon client ID. |
| adm_secret* | string | Amazon client secret. |
| adm_framework* | string | Amazon framework. Possible values: native, unity, adobeAir. |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": true, "android": false, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 9, // required. 9 for Amazon "adm_cid": "CLIENT_ID", // required. Amazon client ID "adm_secret": "CLIENT_SECRET", // required. Amazon Client Secret "adm_framework": "native" // required. possible values: native, unity, adobeAir. }}configureApplication for Chrome
Anchor link toConfigures Chrome platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description | Required |
|---|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. | Required |
| application* | string | Pushwoosh application code | Required |
| device_type* | integer | Must be 11 for Chrome. | Required |
| chrome_fcm_service_account* | object | FCM service account key (JSON file generated in Firebase project settings). | Required |
| chrome_vapid_key* | string | Public VAPID (Voluntary Application Server Identification) key used for push notification authentication in Chrome. | Required |
| chrome_vapid_private_key* | string | Private VAPID key used for signing and sending push notifications in Chrome. | Required |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": true, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "Z2PLR....IRwTqHwCr", "application": "87E33-XXXXX", "device_type": 11, "chrome_fcm_service_account": { "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "client_email": "****@foobar.iam.gserviceaccount.com", "client_id": "11529......6584854983", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/****foobar.iam.gserviceaccount.com", "private_key": "-----BEGIN PRIVATE KEY-----\nuH/OU/fIm8as...\n-----END PRIVATE KEY-----\n", "private_key_id": "e3749......e66d9", "project_id": "app-chrome", "token_uri": "https://oauth2.googleapis.com/token", "type": "service_account", "universe_domain": "googleapis.com" }, "chrome_vapid_key": "BEr....KPqQvCbU", "chrome_vapid_private_key": "ee....flOqmSo" }}configureApplication for Safari
Anchor link toConfigures Safari platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 10 for Safari. |
| safari_key_management_type* | string | Only “manual” type is available currently. |
| safari_website_name | string | Website name. |
| safari_allowed_domains | array | Ex: https://site1.com”, https://site2.com” |
| safari_url_template* | string | Safari URL template formatted as “https://%@“. |
| safari_icon_file | string | Base64-encoded content of 256x256px png file. |
| safari_key_file* | string | Base64-encoded Safari .p12 key file content. |
| safari_key_password | string | Password to the key file. |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": false, "email": false, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": true, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 10, // required. 10 for Safari "safari_key_management_type": "manual", // required. "manual" "safari_website_name": "WEBSITE_NAME", // optional. "safari_allowed_domains": [ // optional. "https://site1.com", "https://site2.com" ], "safari_url_template": "https://%@", // required. "safari_icon_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // optional. Base64-encoded content of 256x256px png file "safari_key_file": "MIIMY...BAQ==", // required. base64-encoded Safari .p12 key file content "safari_key_password": "PASSWORD" // optional. Password to the key file above }}configureApplication for Firefox
Anchor link toConfigures Firefox platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description | Required |
|---|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. | Required |
| application* | string | Pushwoosh application code | Required |
| device_type* | integer | Must be 12 for Firefox. | Required |
| firefox_is_enabled | boolean | Enables push notifications for Firefox. | Optional |
| firefox_fcm_service_account* | object | JSON generated in Firebase project settings. | Required |
| firefox_vapid_key* | string | Public VAPID (Voluntary Application Server Identification) key used for push notification authentication in Firefox. | Required |
| firefox_vapid_private_key* | string | Private VAPID key used for signing and sending push notifications in Firefox. | Required |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": false, "email": false, "firefox": true, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request": { "auth": "Z2PLR....IRwTqHwCr", "application": "87E33-XXXXX", "device_type": 12, "firefox_fcm_service_account": { "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "client_email": "****@foobar.iam.gserviceaccount.com", "client_id": "115........6584854983", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/****@foobar.iam.gserviceaccount.com", "private_key": "-----BEGIN PRIVATE KEY-----\n****uH/OU/fILL****fMJZ+i6****um8as.....\n-----END PRIVATE KEY-----\n", "private_key_id": "e3........8e66d9", "project_id": "app-firefox", "token_uri": "https://oauth2.googleapis.com/token", "type": "service_account", "universe_domain": "googleapis.com" }, "firefox_vapid_key": "BEr....KPqQvCbU", "firefox_vapid_private_key": "ee....flOqmSo" }}configureApplication for Email
Anchor link toConfigures Email platform for the app.
POST https://api.pushwoosh.com/json/1.3/configureApplication
Request Body
Anchor link to| Name | Type | Description |
|---|---|---|
| auth* | string | API access token from Pushwoosh Control Panel. |
| application* | string | Pushwoosh application code |
| device_type* | integer | Must be 14 for Email. |
| email_from_email* | string | Sender email address. Should be valid and verified. |
| email_from_name* | string | Sender name. |
| email_reply* | string | Email address to reply to. Should be valid and verified. |
{ "status_code": 200, "status_message": "OK", "response": { "providers": { "ios": false, "amazon": false, "android": false, "chrome": false, "email": true, "firefox": false, "huawei_android": false, "internet_explorer": false, "osx": false, "safari": false, "sms": false, "web": false, "whats_app": false, "windows": false } }}{ "request":{ "auth": "yxoPUlwqm…………pIyEX4H", // required. API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // required. Pushwoosh application code "device_type": 14, // required. 14 for email "email_from_email": "email@domain.com", // required. Email address should be valid and verified "email_from_name": "SENDER_NAME", // required. Name to display in the "From" email field "email_reply": "email@domain.com" // required. Email address to reply should be valid and verified }}