PingID Application Policy Management API for PingFederate


PingFederate Application Policy API

PingID allows organizations to create web authentication policies, and apply them to one or more applications, or one or more user groups, or both. See Manage app and group lists in the PingID admin guide.

The PingID API provides operations for you to programmatically create, retrieve, update and delete entries in the PingFederate applications list. These operations provide the flexibility for batch or mass application updates, as an alternative to manual updates of individual applications via the admin UI. After the API operations are successfully completed and committed, the updated PingFederate application list is visible by refreshing the admin UI.

AddApplication

The AddApplication operation creates a new application entry in the PingFederate applications list.

This is the AddApplication URL:

https://idpxnyl3m.pingidentity.com/pingid/rest/4/addapplication/do

Request Body Parameters

Example reqBody object in the API payload:

reqBody: {
    "application": {
        "id": "<application ID>",
        "name": "<application name>"
    }
}

The parameters included in the reqBody object are:

Parameter DataType Description
application Application See details in the table below.
clientData String Optional.
This value is returned unchanged in the API response.
It can be used to save state and/or client context data for the application between API calls.

The application parameters:

Parameter DataType Description
id String The application’s unique ID, up to 255 characters in length.
Mandatory.
It can contain alphanumeric characters and spaces.
name String The application’s name, up to 20 characters in length.
Mandatory.
The application name is displayed in the PingFederate application list in the admin UI.
It can contain alphanumeric characters and spaces.

Response Body Parameters

Example response body:

{
  "responseBody": {
    "clientData": null,
    "errorId": 200,
    "errorMsg": null,
    "application": {
        "id": "<application ID>",
        "name": "<application name>"
    },
    "uniqueMsgId": "webs_DqQkivHN1hEzZfJjbcaOQdGcel7fBtZUVj7l1yNbuNI"
  }
}

The parameters included in the responseBody object are:

Parameter DataType Description
clientData String The value sent in the request’s clientData field.
errorId Int A numeric error code.
errorMsg String A textual description of the error, if there is one.
application Application See details in the table below.
uniqueMsgId String A unique ID for the response message. This is logged and used to track the specific transaction for troubleshooting purposes.

The application parameters:

Parameter DataType Description
id String The application’s unique ID.
It can contain alphanumeric characters and spaces.
name String The application’s name.
The application name is displayed in the PingFederate application list in the admin UI.
It can contain alphanumeric characters and spaces.

GetApplications

The GetApplications operation retrieves application details from the PingFederate applications list.

This is the GetApplications URL:

https://idpxnyl3m.pingidentity.com/pingid/rest/4/getapplications/do

Request Body Parameters

Example reqBody object in the API payload:

"reqBody":{}

The optional parameter in the reqBody object:

Parameter DataType Description
clientData String Optional.
This value is returned unchanged in the API response.
It can be used to save state and/or client context data for the application between API calls.

Response Body Parameters

Example response body:

{
  "responseBody": {
    "clientData": null,
    "errorId": 200,
    "errorMsg": null,
    "applications": [
      {
        "id": "<application ID>",
        "name": "<application name>"
      }
    ],
    "uniqueMsgId": "webs_M5MrhPDA8TPjW7n-eaprHD3Bn3lbTmArviGdKhJ8r3U"
  }
}

The parameters included in the responseBody object are:

Parameter DataType Description
clientData String The value sent in the request’s clientData field.
errorId Int A numeric error code.
errorMsg String A textual description of the error, if there is one.
applications List<Application> See details in the application table below.
uniqueMsgId String A unique ID for the response message. This is logged and used to track the specific transaction for troubleshooting purposes.

The application parameters:

Parameter DataType Description
id String The application’s unique ID.
The application ID can contain any characters, including spaces and special characters.
name String The application’s name.
The application name is displayed in the PingFederate application list in the admin UI.
It can contain alphanumeric characters and spaces.

UpdateApplications

The UpdateApplications operation updates specified existing application entries in the PingFederate applications list.

This is the UpdateApplications URL:

https://idpxnyl3m.pingidentity.com/pingid/rest/4/updateapplications/do

Request Body Parameters

Example reqBody object in the API payload:

reqBody: {
    "appsData": {
        "<application current ID>": {
	        "id": "<application new ID>",
	        "name": "<application new name>"
        }
    }
}

The parameters included in the reqBody object are:

Parameter DataType Description
appsData Map<String, Application> The application to be updated, and its new details.
  • key: The application’s current ID.
  • id: The application’s new unique ID, up to 255 characters in length.
    It can contain alphanumeric characters and spaces.
  • name: The application’s new name, up to 20 characters in length.
    The application name is displayed in the PingFederate application list in the admin UI.
    It can contain alphanumeric characters and spaces.
clientData String Optional.
This value is returned unchanged in the API response.
It can be used to save state and/or client context data for the application between API calls.

Response Body Parameters

Example response body:

{
  "responseBody": {
    "clientData": null,
    "errorId": 200,
    "errorMsg": null,
    "uniqueMsgId": "webs_mVZV1fssdOe8Tf1-ubh01oQTnZfDO8FOIK-RVUWs0ng"
  }
}

The parameters included in the responseBody object are:

Parameter DataType Description
clientData String The value sent in the request’s clientData field.
errorId Int A numeric error code.
errorMsg String A textual description of the error, if there is one.
uniqueMsgId String A unique ID for the response message. This is logged and used to track the specific transaction for troubleshooting purposes.

DeleteApplications

The DeleteApplications operation removes specified existing application entries in the PingFederate applications list.

This is the DeleteApplications URL:

https://idpxnyl3m.pingidentity.com/pingid/rest/4/deleteapplications/do

Request Body Parameters

Example reqBody object in the API payload:

reqBody : {
    "applicationsIds": ["<application ID>"]
}

The parameters included in the reqBody object are:

Parameter DataType Description
applicationsIds List<String> The applications to be deleted, specified by their IDs.
clientData String Optional.
This value is returned unchanged in the API response.
It can be used to save state and/or client context data for the application between API calls.

Response Body Parameters

Example response body:

{
  "responseBody": {
    "clientData": null,
    "errorId": 200,
    "errorMsg": null,
    "uniqueMsgId": "webs_9QxTikxO-MLHcFOTF9cX7kUQ4AzYwvM0q_Mt65QXwSI"
  }
}

The parameters included in the responseBody object are:

Parameter DataType Description
clientData String The value sent in the request’s clientData field.
errorId Int A numeric error code.
errorMsg String A textual description of the error, if there is one.
uniqueMsgId String A unique ID for the response message. This is logged and used to track the specific transaction for troubleshooting purposes.