App Configuration API
API methods to configure app platforms

configureApplication for iOS

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for iOS
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 1, // required, 1 - ios, 3 - android, 5 - windows phone, 7 - osx, 8 - windows, 9 - amazon, 10 - safari
"ios_key_management_type": "manual", // required, "manual" (one step) | "auto" (few steps)
"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"
}
}

Auto configuration

Step 1 Create an app and provide your Apple ID information.
Request
Response
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // Pushwoosh application code
"device_type": 1,
"ios_key_management_type": "auto",
"step": "1",
"ios_apple_id": "[email protected]",
"ios_apple_password": "xxxxxx",
"ios_framework": "native" // possible values: "native", "cordova", "titanium", "marmalade", "adobeAir", "corona", "xamarin", "phoneGapBuild", "triggerIO", "unity"
}
}
{
"status_code": 200,
"status_message": "OK",
"response": {
"step_data": {
"teams": {
"12345ABCDE": {
"name": "Pushwoosh team",
"memberid": "XXXXXXXXXX"
}
},
"step": 2 // proceed to step 2
}
}
}
Step 2 Select the Team ID.
Request
Response
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // Pushwoosh application code
"device_type": 1,
"ios_key_management_type": "auto",
"step": "2",
"ios_apple_id": "[email protected]",
"ios_apple_password": "xxxxxx",
"ios_framework": "native", // possible values: "native", "cordova", "titanium", "marmalade", "adobeAir", "corona", "xamarin", "phoneGapBuild", "triggerIO", "unity"
"team_id":"12345ABCDE"
}
}
{
"status_code": 200,
"status_message": "OK",
"response": {
"step_data": {
"appids": [
{
"appIdId": "67890FGHIJ",
"name": "My Application",
"appIdPlatform": "ios",
"prefix": "12345ABCDE",
"identifier": "com.xxxxxxx.xxxxxxx",
"isWildCard": false,
"isDuplicate": false,
"features": {
"push": true,
"iCloud": false,
"inAppPurchase": true,
"gameCenter": true,
"XXXXXXXXXX": false,
"passbook": false,
"YYYYYYYYYY": false,
"dataProtection": ""
},
"enabledFeatures": [
"push",
"inAppPurchase",
"gameCenter"
],
"isDevPushEnabled": false,
"isProdPushEnabled": true
},
...
],
"step": 3 // proceed to step 3
}
}
}
Step 3 Select the App Id.
Request
Response
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // Pushwoosh application code
"device_type": 1,
"ios_key_management_type": "auto",
"step": "3",
"ios_apple_id": "[email protected]",
"ios_apple_password": "xxxxxx",
"ios_framework": "native", // possible values: "native", "cordova", "titanium", "marmalade", "adobeAir", "corona", "xamarin", "phoneGapBuild", "triggerIO", "unity"
"team_id": "12345ABCDE",
"appid": "67890FGHIJ"
}
}
{
"status_code": 200,
"status_message": "OK",
"response": {
"step_data": {
"step": 4 // proceed to step 4
}
}
}
Step 4 Select the apns_type. Configure the app for Dev or Prod.
Request
Response
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // Pushwoosh application code
"device_type": 1,
"ios_key_management_type": "auto",
"step": "4",
"ios_apple_id": "[email protected]",
"ios_apple_password": "xxxxxx",
"ios_framework": "native", // possible values: "native", "cordova", "titanium", "marmalade", "adobeAir", "corona", "xamarin", "phoneGapBuild", "triggerIO", "unity"
"team_id": "12345ABCDE",
"appid": "67890FGHIJ",
"apns_type": "0" // "0" - configure certificate for Development | "1" - configure certificate for Production
}
}
{
"status_code": 200,
"status_message": "OK",
"response": {
"step_data": {
"appIdProfiles":[
{
"profileId":"KLMNOPQRS1",
"name":"iOS Team Provisioning Profile: com.xxxxx.xxxxx"
},
{
"profileId":"KLMNOPQRS2",
"name":"XXXXXXX"
}
],
"certificates": [
{
"value": "PY986727N9",
"name": "Developer (Expiry Feb 13, 2016)"
}
],
"step": 5 // proceed to step 5
}
}
}
Step 5 Select the certificate and provisioning profile.
Request
Response
{
"request":{
"auth":"API_ACCESS_TOKEN",
"application":"APPLICATION_CODE",
"device_type":"1",
"ios_key_management_type":"auto",
"step":"5",
"ios_apple_id":"[email protected]",
"ios_apple_password":"xxxxxx",
"ios_framework": "native", // one of native, cordova, titanium, marmalade, adobeAir, corona, xamarin, phoneGapBuild, triggerIO, unity
"team_id":"12345ABCDE",
"appid":"67890FGHIJ",
"apns_type": "0",
"auto_update_profile": "1", // "0" - manual profile update | "1" - auto profile update
"profile": "KLMNOPQRS2",
"certificate" : "PY986727N9"
}
}
{
"status_code": 200,
"status_message": "OK",
"response":{
"providers":{
"ios":true,
"android":false,
"wp7":false,
"macos":false,
"blackberry":false,
"wns":false,
"adm":false,
"safari":false
},
"needTouchProvProfile":true, // User choosed to auto-update profile
"provProfileTouchedSuccessfully":true, // Profile changed on Apple side
"provProfileUploadSuccessfully":true // Profile created in Pushwoosh
}
}

configureApplication for Android

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Android
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 3, // required, 3 for Android device type
"android_gcm_api_key": "AIzaSyA…………….7rM", // required, Android GCM/FCM API Key
"android_gcm_sender_id": "4821……4542", // required, Android GCM/FCM Sender ID
"android_framework": "native" // required, possible values: native, cordova, marmalade, adobeAir, corona, xamarin, phoneGapBuild, triggerIO, titanium, unity
}
}

configureApplication for Windows Phone

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Windows Phone
For Private Offering subscriptions only.
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 5, // required, 5 for Windows Phone
"wp7_state": "enabled", // optional. Possible values are "enabled" and "disabled", "disabled" will disable the platform
"wp7_type": "authenticated", // or "unauthenticated", optional
"wp7_cert": "iVBORw0KGgoAAAANSUhEUgAABB…", // required when authenticated. Base64-encoded content of certificate file
"wp7_key": "iVBORw0KGgoAAAANSUhEUgAABB…", // required when authenticated. Base64-encoded content of key file
"wp7_ca": "iVBORw0KGgoAAAANSUhEUgAABB…", // required when authenticated. Base64-encoded content of certificate authority file
"wp7_framework": "native" // required. Possible values: native, phoneGapBuild, marmalade, unity.
}
}

configureApplication for Mac OS X

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Mac OS X
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 7, // 7 for OS X
"macos_key_management_type": "manual", // required, only "manual" available
"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 8

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Windows 8
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 8, // 8 for Windows 8
"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

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Amazon
For Private Offering subscriptions only.
Example
{
"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

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Chrome
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 11, // required, 11 for Chrome
"chrome_gcm_api_key": "AIzaSyA…………….7rM", // required, GCM/FCM API key for Google Chrome
"chrome_gcm_project_number": "557…919" // required, GCM/FCM project number
}
}

configureApplication for Safari

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Safari
For Private Offering subscriptions only.
Example
{
"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, only "manual" available
"safari_website_name": "WEBSITE_NAME", // optional
"safari_allowed_domains": ["http://site1.com", "https://site2.com"], // optional
"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

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Firefox
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "lZcoO8ZDvg8nIVh6kS6LWHwcRCS13KxarteY41Alv+a96CKEK+CTUwLszZMbWeuYdTC8KgxphbtAHZ6RQ153", // required, API access code from Pushwoosh Control Panel
"application": "1DC69-73EDB", // required, Pushwoosh application code
"device_type": "12", // required, 12 for Firefox
"firefox_is_enabled": true, // optional
"firefox_fcm_service_account": "FCM service account key", // required, JSON file generated in Firebase project settings
"firefox_fcm_sender_id": "123123123", // optional for fastpushes
"firefox_fcm_api_key" : "sdfsdfsfsddfdsf" // optional for fastpushes
}
}

configureApplication for Email

post
https://cp.pushwoosh.com/json/1.3
/configureApplication
/configureApplication for Email
For Private Offering subscriptions only.
Example
{
"request":{
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"device_type": 14, // 14 for email
"email_from_email": "[email protected]", // 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 protected]" // required, email address to reply should be valid and verified
}
}