Update Application (PingID App)
PUT {{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}
This example uses PUT {{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}} to update the settings for the PingID application.
When you update the settings, any optional parameters left out result in the clearing of the corresponding settings. To prevent unintentional changes, always run GET {{apiPath}}/v1/environments/{{envID}}/applications/{{pingAppID}} before updating the application settings, and use the response as the basis for the body of the PUT request.
Prerequisites
See Application Operations for important overview information.
Request Model
| Property | Type | Required? |
|---|---|---|
|
String |
Optional |
|
Boolean |
Required |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
String |
Required |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
String |
Optional |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
Boolean |
Optional |
|
String |
Optional |
|
String |
Optional |
|
Boolean |
Optional |
|
String |
Optional |
|
String |
Optional |
|
Boolean |
Optional |
|
String |
Required |
|
Boolean |
Required |
|
String |
Optional |
|
Boolean |
Optional |
|
String |
Required |
|
String |
Required |
|
Integer |
Required |
|
Integer |
Required |
|
String |
Required |
See PingID mobile app configuration data model for complete descriptions.
Body
raw ( application/json )
{
"name": "PingID Mobile",
"description":"The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push":{
"numberMatching":{
"type":"SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled":true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
}
Example Request
-
cURL
-
C#
-
Go
-
HTTP
-
Java
-
jQuery
-
NodeJS
-
Python
-
PHP
-
Ruby
-
Swift
curl --location --globoff --request PUT '{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{accessToken}}' \
--data '{
"name": "PingID Mobile",
"description":"The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push":{
"numberMatching":{
"type":"SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled":true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
}'
var options = new RestClientOptions("{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}")
{
MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Put);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer {{accessToken}}");
var body = @"{" + "\n" +
@" ""name"": ""PingID Mobile""," + "\n" +
@" ""description"":""The PingID mobile application can be used for multi-factor authentication and user verification use cases.""," + "\n" +
@" ""protocol"": ""OPENID_CONNECT""," + "\n" +
@" ""type"": ""NATIVE_APP""," + "\n" +
@" ""enabled"": true," + "\n" +
@" ""refreshTokenDuration"": 2592000," + "\n" +
@" ""refreshTokenRollingDuration"": 15552000," + "\n" +
@" ""mobile"": {" + "\n" +
@" ""pingIDSettings"": true," + "\n" +
@" ""bundleId"": ""com.pingidentity.pingid.prod""," + "\n" +
@" ""packageName"": ""prod.com.pingidentity.pingid""," + "\n" +
@" ""otpPushNotificationEnabled"": {" + "\n" +
@" ""enabled"": true" + "\n" +
@" }," + "\n" +
@" ""allowUnPairAndChangeDeviceFromApp"": {" + "\n" +
@" ""enabled"": true" + "\n" +
@" }," + "\n" +
@" ""mobileAppSecurityPinRequire"": {" + "\n" +
@" ""requireForAllDevices"": true," + "\n" +
@" ""securityPinDigit"": ""FOUR_DIGIT""," + "\n" +
@" ""enabled"": true" + "\n" +
@" }," + "\n" +
@" ""allowAuthenticationDeviceLocked"": {" + "\n" +
@" ""enabled"": true" + "\n" +
@" }," + "\n" +
@" ""showAuthenticationInformation"": {" + "\n" +
@" ""enabled"": true" + "\n" +
@" }," + "\n" +
@" ""push"":{" + "\n" +
@" ""numberMatching"":{" + "\n" +
@" ""type"":""SELECT_NUMBER""" + "\n" +
@" }" + "\n" +
@" }," + "\n" +
@" ""mobileDeviceBiometricsSetting"": {" + "\n" +
@" ""enabled"": false," + "\n" +
@" ""required"": true," + "\n" +
@" ""faceIdConsentEnabled"": true," + "\n" +
@" ""notificationActionsEnabled"": true," + "\n" +
@" ""devicePasscodeFallbackEnabled"":true" + "\n" +
@" }," + "\n" +
@" ""notifyRequireMobileVersionUpdates"": {" + "\n" +
@" ""enabled"": true," + "\n" +
@" ""android"": ""1.36.0""," + "\n" +
@" ""ios"": ""1.35.0""" + "\n" +
@" }," + "\n" +
@" ""notifyOptionalMobileVersionUpdates"": {" + "\n" +
@" ""enabled"": true," + "\n" +
@" ""android"": ""1.38.0""," + "\n" +
@" ""ios"": ""latest""" + "\n" +
@" }" + "\n" +
@" }" + "\n" +
@"}" + "\n" +
@"";
request.AddStringBody(body, DataFormat.Json);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}"
method := "PUT"
payload := strings.NewReader(`{
"name": "PingID Mobile",
"description":"The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push":{
"numberMatching":{
"type":"SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled":true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "Bearer {{accessToken}}")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
PUT /v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}} HTTP/1.1
Host: {{apiPath}}
Content-Type: application/json
Authorization: Bearer {{accessToken}}
{
"name": "PingID Mobile",
"description":"The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push":{
"numberMatching":{
"type":"SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled":true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
}
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"name\": \"PingID Mobile\",\n \"description\":\"The PingID mobile application can be used for multi-factor authentication and user verification use cases.\",\n \"protocol\": \"OPENID_CONNECT\",\n \"type\": \"NATIVE_APP\",\n \"enabled\": true,\n \"refreshTokenDuration\": 2592000,\n \"refreshTokenRollingDuration\": 15552000,\n \"mobile\": {\n \"pingIDSettings\": true,\n \"bundleId\": \"com.pingidentity.pingid.prod\",\n \"packageName\": \"prod.com.pingidentity.pingid\",\n \"otpPushNotificationEnabled\": {\n \"enabled\": true\n },\n \"allowUnPairAndChangeDeviceFromApp\": {\n \"enabled\": true\n },\n \"mobileAppSecurityPinRequire\": {\n \"requireForAllDevices\": true,\n \"securityPinDigit\": \"FOUR_DIGIT\",\n \"enabled\": true\n },\n \"allowAuthenticationDeviceLocked\": {\n \"enabled\": true\n },\n \"showAuthenticationInformation\": {\n \"enabled\": true\n },\n \"push\":{\n \"numberMatching\":{\n \"type\":\"SELECT_NUMBER\"\n }\n },\n \"mobileDeviceBiometricsSetting\": {\n \"enabled\": false,\n \"required\": true,\n \"faceIdConsentEnabled\": true,\n \"notificationActionsEnabled\": true,\n \"devicePasscodeFallbackEnabled\":true\n },\n \"notifyRequireMobileVersionUpdates\": {\n \"enabled\": true,\n \"android\": \"1.36.0\",\n \"ios\": \"1.35.0\"\n },\n \"notifyOptionalMobileVersionUpdates\": {\n \"enabled\": true,\n \"android\": \"1.38.0\",\n \"ios\": \"latest\"\n }\n }\n}\n");
Request request = new Request.Builder()
.url("{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}")
.method("PUT", body)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Bearer {{accessToken}}")
.build();
Response response = client.newCall(request).execute();
var settings = {
"url": "{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}",
"method": "PUT",
"timeout": 0,
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer {{accessToken}}"
},
"data": JSON.stringify({
"name": "PingID Mobile",
"description": "The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push": {
"numberMatching": {
"type": "SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled": true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
}),
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var request = require('request');
var options = {
'method': 'PUT',
'url': '{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}',
'headers': {
'Content-Type': 'application/json',
'Authorization': 'Bearer {{accessToken}}'
},
body: JSON.stringify({
"name": "PingID Mobile",
"description": "The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push": {
"numberMatching": {
"type": "SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled": true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}"
payload = json.dumps({
"name": "PingID Mobile",
"description": "The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": True,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": True,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": True
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": True
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": True,
"securityPinDigit": "FOUR_DIGIT",
"enabled": True
},
"allowAuthenticationDeviceLocked": {
"enabled": True
},
"showAuthenticationInformation": {
"enabled": True
},
"push": {
"numberMatching": {
"type": "SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": False,
"required": True,
"faceIdConsentEnabled": True,
"notificationActionsEnabled": True,
"devicePasscodeFallbackEnabled": True
},
"notifyRequireMobileVersionUpdates": {
"enabled": True,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": True,
"android": "1.38.0",
"ios": "latest"
}
}
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer {{accessToken}}'
}
response = requests.request("PUT", url, headers=headers, data=payload)
print(response.text)
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}');
$request->setMethod(HTTP_Request2::METHOD_PUT);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'Content-Type' => 'application/json',
'Authorization' => 'Bearer {{accessToken}}'
));
$request->setBody('{\n "name": "PingID Mobile",\n "description":"The PingID mobile application can be used for multi-factor authentication and user verification use cases.",\n "protocol": "OPENID_CONNECT",\n "type": "NATIVE_APP",\n "enabled": true,\n "refreshTokenDuration": 2592000,\n "refreshTokenRollingDuration": 15552000,\n "mobile": {\n "pingIDSettings": true,\n "bundleId": "com.pingidentity.pingid.prod",\n "packageName": "prod.com.pingidentity.pingid",\n "otpPushNotificationEnabled": {\n "enabled": true\n },\n "allowUnPairAndChangeDeviceFromApp": {\n "enabled": true\n },\n "mobileAppSecurityPinRequire": {\n "requireForAllDevices": true,\n "securityPinDigit": "FOUR_DIGIT",\n "enabled": true\n },\n "allowAuthenticationDeviceLocked": {\n "enabled": true\n },\n "showAuthenticationInformation": {\n "enabled": true\n },\n "push":{\n "numberMatching":{\n "type":"SELECT_NUMBER"\n }\n },\n "mobileDeviceBiometricsSetting": {\n "enabled": false,\n "required": true,\n "faceIdConsentEnabled": true,\n "notificationActionsEnabled": true,\n "devicePasscodeFallbackEnabled":true\n },\n "notifyRequireMobileVersionUpdates": {\n "enabled": true,\n "android": "1.36.0",\n "ios": "1.35.0"\n },\n "notifyOptionalMobileVersionUpdates": {\n "enabled": true,\n "android": "1.38.0",\n "ios": "latest"\n }\n }\n}');
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
require "uri"
require "json"
require "net/http"
url = URI("{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer {{accessToken}}"
request.body = JSON.dump({
"name": "PingID Mobile",
"description": "The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"protocol": "OPENID_CONNECT",
"type": "NATIVE_APP",
"enabled": true,
"refreshTokenDuration": 2592000,
"refreshTokenRollingDuration": 15552000,
"mobile": {
"pingIDSettings": true,
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"otpPushNotificationEnabled": {
"enabled": true
},
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"push": {
"numberMatching": {
"type": "SELECT_NUMBER"
}
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled": true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
}
}
})
response = http.request(request)
puts response.read_body
let parameters = "{\n \"name\": \"PingID Mobile\",\n \"description\":\"The PingID mobile application can be used for multi-factor authentication and user verification use cases.\",\n \"protocol\": \"OPENID_CONNECT\",\n \"type\": \"NATIVE_APP\",\n \"enabled\": true,\n \"refreshTokenDuration\": 2592000,\n \"refreshTokenRollingDuration\": 15552000,\n \"mobile\": {\n \"pingIDSettings\": true,\n \"bundleId\": \"com.pingidentity.pingid.prod\",\n \"packageName\": \"prod.com.pingidentity.pingid\",\n \"otpPushNotificationEnabled\": {\n \"enabled\": true\n },\n \"allowUnPairAndChangeDeviceFromApp\": {\n \"enabled\": true\n },\n \"mobileAppSecurityPinRequire\": {\n \"requireForAllDevices\": true,\n \"securityPinDigit\": \"FOUR_DIGIT\",\n \"enabled\": true\n },\n \"allowAuthenticationDeviceLocked\": {\n \"enabled\": true\n },\n \"showAuthenticationInformation\": {\n \"enabled\": true\n },\n \"push\":{\n \"numberMatching\":{\n \"type\":\"SELECT_NUMBER\"\n }\n },\n \"mobileDeviceBiometricsSetting\": {\n \"enabled\": false,\n \"required\": true,\n \"faceIdConsentEnabled\": true,\n \"notificationActionsEnabled\": true,\n \"devicePasscodeFallbackEnabled\":true\n },\n \"notifyRequireMobileVersionUpdates\": {\n \"enabled\": true,\n \"android\": \"1.36.0\",\n \"ios\": \"1.35.0\"\n },\n \"notifyOptionalMobileVersionUpdates\": {\n \"enabled\": true,\n \"android\": \"1.38.0\",\n \"ios\": \"latest\"\n }\n }\n}"
let postData = parameters.data(using: .utf8)
var request = URLRequest(url: URL(string: "{{apiPath}}/v1/environments/{{EnvIDConverged}}/applications/{{pingAppID}}")!,timeoutInterval: Double.infinity)
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("Bearer {{accessToken}}", forHTTPHeaderField: "Authorization")
request.httpMethod = "PUT"
request.httpBody = postData
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
}
task.resume()
Example Response
200 OK
{
"_links": {
"self": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/applications/cd4b4ff5-6972-464a-b853-6655077cd85f"
},
"environment": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
},
"attributes": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/applications/cd4b4ff5-6972-464a-b853-6655077cd85f/attributes"
},
"pushCredentials": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/applications/cd4b4ff5-6972-464a-b853-6655077cd85f/pushCredentials"
},
"secret": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/applications/cd4b4ff5-6972-464a-b853-6655077cd85f/secret"
},
"grants": {
"href": "https://api.pingone.eu/v1/environments/abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6/applications/cd4b4ff5-6972-464a-b853-6655077cd85f/grants"
}
},
"environment": {
"id": "abfba8f6-49eb-49f5-a5d9-80ad5c98f9f6"
},
"id": "cd4b4ff5-6972-464a-b853-6655077cd85f",
"name": "PingID Mobile",
"description": "The PingID mobile application can be used for multi-factor authentication and user verification use cases.",
"enabled": true,
"type": "NATIVE_APP",
"protocol": "OPENID_CONNECT",
"createdAt": "2026-05-14T12:01:06.970Z",
"updatedAt": "2026-05-17T14:30:43.934Z",
"clientId": "cd4b4ff5-6972-464a-b853-6655077cd85f",
"assignActorRoles": false,
"mobile": {
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"integrityDetection": {
"mode": "DISABLED"
},
"push": {
"numberMatching": {
"type": "SELECT_NUMBER"
}
},
"passcodeRefreshDuration": {
"duration": 30,
"timeUnit": "SECONDS"
},
"passcodeGracePeriod": 5,
"allowUnPairAndChangeDeviceFromApp": {
"enabled": true
},
"allowAuthenticationDeviceLocked": {
"enabled": true
},
"mobileAppSecurityPinRequire": {
"requireForAllDevices": true,
"securityPinDigit": "FOUR_DIGIT",
"enabled": true
},
"notifyRequireMobileVersionUpdates": {
"enabled": true,
"android": "1.36.0",
"ios": "1.35.0"
},
"notifyOptionalMobileVersionUpdates": {
"enabled": true,
"android": "1.38.0",
"ios": "latest"
},
"mobileDeviceBiometricsSetting": {
"enabled": false,
"required": true,
"faceIdConsentEnabled": true,
"notificationActionsEnabled": true,
"devicePasscodeFallbackEnabled": true
},
"showAuthenticationInformation": {
"enabled": true
},
"otpPushNotificationEnabled": {
"enabled": true
},
"pingIDSettings": true
},
"bundleId": "com.pingidentity.pingid.prod",
"packageName": "prod.com.pingidentity.pingid",
"refreshTokenDuration": 2592000,
"p1ApiAccessTokenValiditySeconds": 3600,
"pkceEnforcement": "OPTIONAL",
"tokenEndpointAuthMethod": "NONE",
"refreshTokenRollingDuration": 15552000,
"requestScopesForMultipleResourcesEnabled": false,
"parRequirement": "OPTIONAL",
"devicePollingInterval": 5,
"parTimeout": 60,
"deviceTimeout": 600
}