/configureApplication for iOS

👍

Enterprise API

Configures application on the account.

Auto configuration

Step 1
Create the app and provide the Apple ID information.

Request

{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
    "application": "XXXXX-XXXXX", // your 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"
  }
}

Response

{
  "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

{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
    "application": "XXXXX-XXXXX", // your 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"
 }
}

Response

{
  "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

{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
    "application": "XXXXX-XXXXX", // your 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"
 }
}

Response

{
  "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

{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H", // API access token from Pushwoosh Control Panel
    "application": "XXXXX-XXXXX", // your 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
 }
}

Response

{
  "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

{
  "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"
  }
}

Response

{
  "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
  }
}
Language
Click Try It! to start a request and see the response here!