Use this API to manage PingID SDK applications.
PingID SDK Applications can also be managed in the admin web console. See Manage PingID SDK applications.
All requests require authorization of the server. See Signatures in PingID SDK.
Application representation
Parameter Name | Type | Description |
---|---|---|
id | String | The application ID.
|
name | String | The application name.
|
appEnabled | Boolean | Whether the application is enabled. The default is false. |
sharedBetweenAccounts | Boolean | Whether the application is shared between accounts. If the application ID already exists in another account in the same data center region (North America, Europe or Australia), the value is true. The value is returned from the server and is read-only. |
fcmSenderId | String | The FCM sender ID, used to identify each sender that can send messages to the client app. Optional. |
fcmServerKey | String | The FCM server key, that authorizes the app server for access to Google services, including sending messages via the Firebase Cloud Messaging legacy protocols. Optional. |
googleServiceAccountCredentials | String | The contents of the JSON file that represents your Service Account Credentials. This is the JSON file with your Google Services Account Key that you created in Firebase or the Google Cloud console. The FCM legacy APIs were deprecated in June 2023 and are planned for removal in June 2024. So you should use this parameter to update the credentials for all your applications. |
REST operations
HTTP Method | Description |
---|---|
POST | Create an application. |
GET | Retrieve an application or all the applications in the account. |
PUT | Update an application. |
Create an application (POST)
Relative Path
/accounts/{accountId}/applications
Request Body Structure
For legacy FCM:
{
"id": "<application UUID>",
"name": "<application name>",
"appEnabled": <true or false. default: false>,
"fcmSenderId": "<FCM sender ID. optional>",
"fcmServerKey": "<FCM server key. optional>"
}
For FCM HTTP v1:
{
"id": "<application UUID>",
"name": "<application name>",
"appEnabled": <true or false. default: false>,
"googleServiceAccountCredentials": "{ \"type\": \"service_account\", \"project_id\": ... \"universe_domain\": \"googleapis.com\"}"
}
Create application request example
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \
"id": "cb869bc1-b136-4698-afce-5e6775333bbc", \
"name": "Moderno Application", \
"appEnabled": true \
}' 'https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications'
Create application response example
{
"self": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc"
},
"account": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2"
},
"id": "cb869bc1-b136-4698-afce-5e6775333bbc",
"name": "Moderno Application",
"appEnabled": true,
"sharedBetweenAccounts": false
}
Update an application (PUT)
Relative Path
/accounts/{accountId}/applications/{applicationId}
Update application request example
curl --location --request PUT 'https://sdk.pingid.com/pingid/v1/accounts/46addcf3-535e-4b2b-a6fc-78c399212037/applications/60da9403-1190-419a-905d-c9db770c5426' \
--header 'Content-Type: application/json' \
--data-raw '{
"id" : "60da9403-1190-419a-905d-c9db770c5426",
"name":"push_prod_app",
"appEnabled": "true",
"sharedBetweenAccounts": "true",
"googleServiceAccountCredentials":"{ \"type\": \"service_account\", \"project_id\": ... \"universe_domain\": \"googleapis.com\"}"
}'
Update application response example
{
"self": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc"
},
"attributes": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc/attributes"
},
"account": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2"
},
"id": "cb869bc1-b136-4698-afce-5e6775333bbc",
"name": "Moderno Application - changed",
"appEnabled": true,
"sharedBetweenAccounts": false
}
Get bulk applications (GET)
Get all the applications in the account.
Relative Path
/accounts/{accountId}/applications
Get applications request example
curl -X GET --header 'Accept: application/json' 'https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications'
Get applications response example
{
"applications": [
{
"id": "cb869bc1-b136-4698-afce-5e6775333bbc",
"name": "Moderno Application",
"appEnabled": true,
"sharedBetweenAccounts": false
}
]
}
Get an application (GET)
Get a specific application in the account.
Relative Path
/accounts/{accountId}/applications/{applicationId}
Get an application request example
curl -X GET --header 'Accept: application/json' 'https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc'
Get an application response example
{
"certificates": {
"href": "https://test-sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc/certificates"
},
"self": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc"
},
"attributes": {
"href": "https://sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2/applications/cb869bc1-b136-4698-afce-5e6775333bbc/attributes"
},
"account": {
"href": "https://test-sdk.pingid.com/pingid/v1/accounts/f851a4da-1239-4008-9456-8b93279558f2"
},
"id": "cb869bc1-b136-4698-afce-5e6775333bbc",
"name": "Moderno Application",
"appEnabled": true,
"sharedBetweenAccounts": false
}