Chilkat Online Tools

Objective-C / ForgeRock Identity Cloud Collection / Step 3: Create Administrative OAuth 2.0 Client

Back to Collection Items

#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoStringBuilder.h>
#import <CkoHttpResponse.h>

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

CkoHttp *http = [[CkoHttp alloc] init];
BOOL success;

// Use this online tool to generate code from sample JSON: Generate Code to Create JSON

// The following JSON is sent in the request body.

// {
//   "coreOAuth2ClientConfig": {
//     "agentgroup": "",
//     "status": {
//       "inherited": false,
//       "value": "Active"
//     },
//     "userpassword": "{{postmanClientSecret}}",
//     "clientType": {
//       "inherited": false,
//       "value": "Confidential"
//     },
//     "loopbackInterfaceRedirection": {
//       "inherited": true,
//       "value": true
//     },
//     "redirectionUris": {
//       "inherited": false,
//       "value": [
//         "https://httpbin.org/anything"
//       ]
//     },
//     "scopes": {
//       "inherited": false,
//       "value": [
//         "fr:idm:*"
//       ]
//     },
//     "defaultScopes": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "clientName": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "authorizationCodeLifetime": {
//       "inherited": true,
//       "value": 0
//     },
//     "refreshTokenLifetime": {
//       "inherited": true,
//       "value": 0
//     },
//     "accessTokenLifetime": {
//       "inherited": true,
//       "value": 0
//     }
//   },
//   "advancedOAuth2ClientConfig": {
//     "name": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "descriptions": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "requestUris": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "responseTypes": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "grantTypes": {
//       "inherited": false,
//       "value": [
//         "password"
//       ]
//     },
//     "contacts": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "tokenEndpointAuthMethod": {
//       "inherited": true,
//       "value": "string"
//     },
//     "sectorIdentifierUri": {
//       "inherited": true,
//       "value": "string"
//     },
//     "subjectType": {
//       "inherited": true,
//       "value": "string"
//     },
//     "updateAccessToken": {
//       "inherited": true,
//       "value": "string"
//     },
//     "clientUri": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "logoUri": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "policyUri": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "isConsentImplied": {
//       "inherited": true,
//       "value": true
//     },
//     "mixUpMitigation": {
//       "inherited": true,
//       "value": true
//     }
//   },
//   "coreOpenIDClientConfig": {
//     "claims": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "postLogoutRedirectUri": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "clientSessionUri": {
//       "inherited": true,
//       "value": "string"
//     },
//     "defaultMaxAge": {
//       "inherited": true,
//       "value": 0
//     },
//     "defaultMaxAgeEnabled": {
//       "inherited": true,
//       "value": true
//     },
//     "defaultAcrValues": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     },
//     "jwtTokenLifetime": {
//       "inherited": true,
//       "value": 0
//     }
//   },
//   "signEncOAuth2ClientConfig": {
//     "jwksUri": {
//       "inherited": true,
//       "value": "string"
//     },
//     "jwksCacheTimeout": {
//       "inherited": true,
//       "value": 0
//     },
//     "jwkStoreCacheMissCacheTime": {
//       "inherited": true,
//       "value": 0
//     },
//     "tokenEndpointAuthSigningAlgorithm": {
//       "inherited": true,
//       "value": "string"
//     },
//     "jwkSet": {
//       "inherited": true,
//       "value": "string"
//     },
//     "idTokenSignedResponseAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "idTokenEncryptionEnabled": {
//       "inherited": true,
//       "value": true
//     },
//     "idTokenEncryptionAlgorithm": {
//       "inherited": true,
//       "value": "string"
//     },
//     "idTokenEncryptionMethod": {
//       "inherited": true,
//       "value": "string"
//     },
//     "idTokenPublicEncryptionKey": {
//       "inherited": true,
//       "value": "string"
//     },
//     "clientJwtPublicKey": {
//       "inherited": true,
//       "value": "string"
//     },
//     "mTLSTrustedCert": {
//       "inherited": true,
//       "value": "string"
//     },
//     "mTLSSubjectDN": {
//       "inherited": true,
//       "value": "string"
//     },
//     "mTLSCertificateBoundAccessTokens": {
//       "inherited": true,
//       "value": true
//     },
//     "publicKeyLocation": {
//       "inherited": true,
//       "value": "string"
//     },
//     "userinfoResponseFormat": {
//       "inherited": true,
//       "value": "string"
//     },
//     "userinfoSignedResponseAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "userinfoEncryptedResponseAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "userinfoEncryptedResponseEncryptionAlgorithm": {
//       "inherited": true,
//       "value": "string"
//     },
//     "requestParameterSignedAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "requestParameterEncryptedAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "requestParameterEncryptedEncryptionAlgorithm": {
//       "inherited": true,
//       "value": "string"
//     },
//     "tokenIntrospectionResponseFormat": {
//       "inherited": true,
//       "value": "string"
//     },
//     "tokenIntrospectionSignedResponseAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "tokenIntrospectionEncryptedResponseAlg": {
//       "inherited": true,
//       "value": "string"
//     },
//     "tokenIntrospectionEncryptedResponseEncryptionAlgorithm": {
//       "inherited": true,
//       "value": "string"
//     }
//   },
//   "coreUmaClientConfig": {
//     "claimsRedirectionUris": {
//       "inherited": true,
//       "value": [
//         "Unknown Type: any"
//       ]
//     }
//   }
// }

CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"coreOAuth2ClientConfig.agentgroup" value: @""];
[json UpdateBool: @"coreOAuth2ClientConfig.status.inherited" value: NO];
[json UpdateString: @"coreOAuth2ClientConfig.status.value" value: @"Active"];
[json UpdateString: @"coreOAuth2ClientConfig.userpassword" value: @"{{postmanClientSecret}}"];
[json UpdateBool: @"coreOAuth2ClientConfig.clientType.inherited" value: NO];
[json UpdateString: @"coreOAuth2ClientConfig.clientType.value" value: @"Confidential"];
[json UpdateBool: @"coreOAuth2ClientConfig.loopbackInterfaceRedirection.inherited" value: YES];
[json UpdateBool: @"coreOAuth2ClientConfig.loopbackInterfaceRedirection.value" value: YES];
[json UpdateBool: @"coreOAuth2ClientConfig.redirectionUris.inherited" value: NO];
[json UpdateString: @"coreOAuth2ClientConfig.redirectionUris.value[0]" value: @"https://httpbin.org/anything"];
[json UpdateBool: @"coreOAuth2ClientConfig.scopes.inherited" value: NO];
[json UpdateString: @"coreOAuth2ClientConfig.scopes.value[0]" value: @"fr:idm:*"];
[json UpdateBool: @"coreOAuth2ClientConfig.defaultScopes.inherited" value: YES];
[json UpdateString: @"coreOAuth2ClientConfig.defaultScopes.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"coreOAuth2ClientConfig.clientName.inherited" value: YES];
[json UpdateString: @"coreOAuth2ClientConfig.clientName.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"coreOAuth2ClientConfig.authorizationCodeLifetime.inherited" value: YES];
[json UpdateInt: @"coreOAuth2ClientConfig.authorizationCodeLifetime.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"coreOAuth2ClientConfig.refreshTokenLifetime.inherited" value: YES];
[json UpdateInt: @"coreOAuth2ClientConfig.refreshTokenLifetime.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"coreOAuth2ClientConfig.accessTokenLifetime.inherited" value: YES];
[json UpdateInt: @"coreOAuth2ClientConfig.accessTokenLifetime.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"advancedOAuth2ClientConfig.name.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.name.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.descriptions.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.descriptions.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.requestUris.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.requestUris.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.responseTypes.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.responseTypes.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.grantTypes.inherited" value: NO];
[json UpdateString: @"advancedOAuth2ClientConfig.grantTypes.value[0]" value: @"password"];
[json UpdateBool: @"advancedOAuth2ClientConfig.contacts.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.contacts.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.tokenEndpointAuthMethod.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.tokenEndpointAuthMethod.value" value: @"string"];
[json UpdateBool: @"advancedOAuth2ClientConfig.sectorIdentifierUri.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.sectorIdentifierUri.value" value: @"string"];
[json UpdateBool: @"advancedOAuth2ClientConfig.subjectType.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.subjectType.value" value: @"string"];
[json UpdateBool: @"advancedOAuth2ClientConfig.updateAccessToken.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.updateAccessToken.value" value: @"string"];
[json UpdateBool: @"advancedOAuth2ClientConfig.clientUri.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.clientUri.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.logoUri.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.logoUri.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.policyUri.inherited" value: YES];
[json UpdateString: @"advancedOAuth2ClientConfig.policyUri.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"advancedOAuth2ClientConfig.isConsentImplied.inherited" value: YES];
[json UpdateBool: @"advancedOAuth2ClientConfig.isConsentImplied.value" value: YES];
[json UpdateBool: @"advancedOAuth2ClientConfig.mixUpMitigation.inherited" value: YES];
[json UpdateBool: @"advancedOAuth2ClientConfig.mixUpMitigation.value" value: YES];
[json UpdateBool: @"coreOpenIDClientConfig.claims.inherited" value: YES];
[json UpdateString: @"coreOpenIDClientConfig.claims.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"coreOpenIDClientConfig.postLogoutRedirectUri.inherited" value: YES];
[json UpdateString: @"coreOpenIDClientConfig.postLogoutRedirectUri.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"coreOpenIDClientConfig.clientSessionUri.inherited" value: YES];
[json UpdateString: @"coreOpenIDClientConfig.clientSessionUri.value" value: @"string"];
[json UpdateBool: @"coreOpenIDClientConfig.defaultMaxAge.inherited" value: YES];
[json UpdateInt: @"coreOpenIDClientConfig.defaultMaxAge.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"coreOpenIDClientConfig.defaultMaxAgeEnabled.inherited" value: YES];
[json UpdateBool: @"coreOpenIDClientConfig.defaultMaxAgeEnabled.value" value: YES];
[json UpdateBool: @"coreOpenIDClientConfig.defaultAcrValues.inherited" value: YES];
[json UpdateString: @"coreOpenIDClientConfig.defaultAcrValues.value[0]" value: @"Unknown Type: any"];
[json UpdateBool: @"coreOpenIDClientConfig.jwtTokenLifetime.inherited" value: YES];
[json UpdateInt: @"coreOpenIDClientConfig.jwtTokenLifetime.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"signEncOAuth2ClientConfig.jwksUri.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.jwksUri.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.jwksCacheTimeout.inherited" value: YES];
[json UpdateInt: @"signEncOAuth2ClientConfig.jwksCacheTimeout.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"signEncOAuth2ClientConfig.jwkStoreCacheMissCacheTime.inherited" value: YES];
[json UpdateInt: @"signEncOAuth2ClientConfig.jwkStoreCacheMissCacheTime.value" value: [NSNumber numberWithInt: 0]];
[json UpdateBool: @"signEncOAuth2ClientConfig.tokenEndpointAuthSigningAlgorithm.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.tokenEndpointAuthSigningAlgorithm.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.jwkSet.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.jwkSet.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenSignedResponseAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.idTokenSignedResponseAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenEncryptionEnabled.inherited" value: YES];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenEncryptionEnabled.value" value: YES];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenEncryptionAlgorithm.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.idTokenEncryptionAlgorithm.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenEncryptionMethod.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.idTokenEncryptionMethod.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.idTokenPublicEncryptionKey.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.idTokenPublicEncryptionKey.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.clientJwtPublicKey.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.clientJwtPublicKey.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.mTLSTrustedCert.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.mTLSTrustedCert.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.mTLSSubjectDN.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.mTLSSubjectDN.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.mTLSCertificateBoundAccessTokens.inherited" value: YES];
[json UpdateBool: @"signEncOAuth2ClientConfig.mTLSCertificateBoundAccessTokens.value" value: YES];
[json UpdateBool: @"signEncOAuth2ClientConfig.publicKeyLocation.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.publicKeyLocation.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.userinfoResponseFormat.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.userinfoResponseFormat.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.userinfoSignedResponseAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.userinfoSignedResponseAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.userinfoEncryptedResponseAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.userinfoEncryptedResponseAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.userinfoEncryptedResponseEncryptionAlgorithm.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.userinfoEncryptedResponseEncryptionAlgorithm.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.requestParameterSignedAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.requestParameterSignedAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.requestParameterEncryptedAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.requestParameterEncryptedAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.requestParameterEncryptedEncryptionAlgorithm.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.requestParameterEncryptedEncryptionAlgorithm.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.tokenIntrospectionResponseFormat.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.tokenIntrospectionResponseFormat.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.tokenIntrospectionSignedResponseAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.tokenIntrospectionSignedResponseAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.tokenIntrospectionEncryptedResponseAlg.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.tokenIntrospectionEncryptedResponseAlg.value" value: @"string"];
[json UpdateBool: @"signEncOAuth2ClientConfig.tokenIntrospectionEncryptedResponseEncryptionAlgorithm.inherited" value: YES];
[json UpdateString: @"signEncOAuth2ClientConfig.tokenIntrospectionEncryptedResponseEncryptionAlgorithm.value" value: @"string"];
[json UpdateBool: @"coreUmaClientConfig.claimsRedirectionUris.inherited" value: YES];
[json UpdateString: @"coreUmaClientConfig.claimsRedirectionUris.value[0]" value: @"Unknown Type: any"];

[http SetRequestHeader: @"accept" value: @"application/json"];
[http SetRequestHeader: @"X-Requested-With" value: @"ForgeRock Identity Cloud Postman Collection"];
[http SetRequestHeader: @"Content-Type" value: @"application/json"];
[http SetRequestHeader: @"{{cookieName}}" value: @"{{adminSSOToken}}"];

CkoStringBuilder *sbRequestBody = [[CkoStringBuilder alloc] init];
[json EmitSb: sbRequestBody];

CkoHttpResponse *resp = [http PTextSb: @"PUT" url: @"https://<tenant-name>.forgeblocks.com/am/json/realms/root/realms/alpha/realm-config/agents/OAuth2Client/postmanAdminClient" textData: sbRequestBody charset: @"utf-8" contentType: @"application/json" md5: NO gzip: NO];
if (http.LastMethodSuccess == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

NSLog(@"%d",[resp.StatusCode intValue]);
NSLog(@"%@",resp.BodyStr);

Curl Command

curl -X PUT
	-H "accept: application/json"
	-H "Content-Type: application/json"
	-H "X-Requested-With: ForgeRock Identity Cloud Postman Collection"
	-H "{{cookieName}}: {{adminSSOToken}}"
	-d '{
  "coreOAuth2ClientConfig": {
    "agentgroup": "",
    "status": {
      "inherited": false,
      "value": "Active"
    },
    
    "userpassword": "{{postmanClientSecret}}",
    "clientType": {
      "inherited": false,
      "value": "Confidential"
    },
    "loopbackInterfaceRedirection": {
      "inherited": true,
      "value": true
    },
    "redirectionUris": {
      "inherited": false,
      "value": [
        "https://httpbin.org/anything"
      ]
    },
    "scopes": {
      "inherited": false,
      "value": [
        "fr:idm:*"
      ]
    },
    "defaultScopes": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "clientName": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "authorizationCodeLifetime": {
      "inherited": true,
      "value": 0
    },
    "refreshTokenLifetime": {
      "inherited": true,
      "value": 0
    },
    "accessTokenLifetime": {
      "inherited": true,
      "value": 0
    }
  },
  "advancedOAuth2ClientConfig": {
    "name": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "descriptions": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "requestUris": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "responseTypes": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "grantTypes": {
      "inherited": false,
      "value": [
        "password"
      ]
    },
    "contacts": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "tokenEndpointAuthMethod": {
      "inherited": true,
      "value": "string"
    },
    "sectorIdentifierUri": {
      "inherited": true,
      "value": "string"
    },
    "subjectType": {
      "inherited": true,
      "value": "string"
    },
    "updateAccessToken": {
      "inherited": true,
      "value": "string"
    },
    "clientUri": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "logoUri": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "policyUri": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "isConsentImplied": {
      "inherited": true,
      "value": true
    },
    "mixUpMitigation": {
      "inherited": true,
      "value": true
    }
  },
  "coreOpenIDClientConfig": {
    "claims": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "postLogoutRedirectUri": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "clientSessionUri": {
      "inherited": true,
      "value": "string"
    },
    "defaultMaxAge": {
      "inherited": true,
      "value": 0
    },
    "defaultMaxAgeEnabled": {
      "inherited": true,
      "value": true
    },
    "defaultAcrValues": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    },
    "jwtTokenLifetime": {
      "inherited": true,
      "value": 0
    }
  },
  "signEncOAuth2ClientConfig": {
    "jwksUri": {
      "inherited": true,
      "value": "string"
    },
    "jwksCacheTimeout": {
      "inherited": true,
      "value": 0
    },
    "jwkStoreCacheMissCacheTime": {
      "inherited": true,
      "value": 0
    },
    "tokenEndpointAuthSigningAlgorithm": {
      "inherited": true,
      "value": "string"
    },
    "jwkSet": {
      "inherited": true,
      "value": "string"
    },
    "idTokenSignedResponseAlg": {
      "inherited": true,
      "value": "string"
    },
    "idTokenEncryptionEnabled": {
      "inherited": true,
      "value": true
    },
    "idTokenEncryptionAlgorithm": {
      "inherited": true,
      "value": "string"
    },
    "idTokenEncryptionMethod": {
      "inherited": true,
      "value": "string"
    },
    "idTokenPublicEncryptionKey": {
      "inherited": true,
      "value": "string"
    },
    "clientJwtPublicKey": {
      "inherited": true,
      "value": "string"
    },
    "mTLSTrustedCert": {
      "inherited": true,
      "value": "string"
    },
    "mTLSSubjectDN": {
      "inherited": true,
      "value": "string"
    },
    "mTLSCertificateBoundAccessTokens": {
      "inherited": true,
      "value": true
    },
    "publicKeyLocation": {
      "inherited": true,
      "value": "string"
    },
    "userinfoResponseFormat": {
      "inherited": true,
      "value": "string"
    },
    "userinfoSignedResponseAlg": {
      "inherited": true,
      "value": "string"
    },
    "userinfoEncryptedResponseAlg": {
      "inherited": true,
      "value": "string"
    },
    "userinfoEncryptedResponseEncryptionAlgorithm": {
      "inherited": true,
      "value": "string"
    },
    "requestParameterSignedAlg": {
      "inherited": true,
      "value": "string"
    },
    "requestParameterEncryptedAlg": {
      "inherited": true,
      "value": "string"
    },
    "requestParameterEncryptedEncryptionAlgorithm": {
      "inherited": true,
      "value": "string"
    },
    "tokenIntrospectionResponseFormat": {
      "inherited": true,
      "value": "string"
    },
    "tokenIntrospectionSignedResponseAlg": {
      "inherited": true,
      "value": "string"
    },
    "tokenIntrospectionEncryptedResponseAlg": {
      "inherited": true,
      "value": "string"
    },
    "tokenIntrospectionEncryptedResponseEncryptionAlgorithm": {
      "inherited": true,
      "value": "string"
    }
  },
  "coreUmaClientConfig": {
    "claimsRedirectionUris": {
      "inherited": true,
      "value": [
        "Unknown Type: any"
      ]
    }
  }
}'
https://<tenant-name>.forgeblocks.com/am/json/realms/root/realms/alpha/realm-config/agents/OAuth2Client/postmanAdminClient

Postman Collection Item JSON

{
  "name": "Step 3: Create Administrative OAuth 2.0 Client",
  "request": {
    "method": "PUT",
    "header": [
      {
        "description": "Specifies certain media types which are acceptable for the resource.",
        "key": "accept",
        "type": "text",
        "value": "application/json"
      },
      {
        "description": "The media type of the resource.",
        "key": "Content-Type",
        "type": "text",
        "value": "application/json"
      },
      {
        "description": "Custom header.",
        "key": "X-Requested-With",
        "type": "text",
        "value": "ForgeRock Identity Cloud Postman Collection"
      },
      {
        "description": "SSO token of an administrator. ",
        "key": "{{cookieName}}",
        "type": "text",
        "value": "{{adminSSOToken}}"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n  \"coreOAuth2ClientConfig\": {\n    \"agentgroup\": \"\",\n    \"status\": {\n      \"inherited\": false,\n      \"value\": \"Active\"\n    },\n    \n    \"userpassword\": \"{{postmanClientSecret}}\",\n    \"clientType\": {\n      \"inherited\": false,\n      \"value\": \"Confidential\"\n    },\n    \"loopbackInterfaceRedirection\": {\n      \"inherited\": true,\n      \"value\": true\n    },\n    \"redirectionUris\": {\n      \"inherited\": false,\n      \"value\": [\n        \"https://httpbin.org/anything\"\n      ]\n    },\n    \"scopes\": {\n      \"inherited\": false,\n      \"value\": [\n        \"fr:idm:*\"\n      ]\n    },\n    \"defaultScopes\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"clientName\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"authorizationCodeLifetime\": {\n      \"inherited\": true,\n      \"value\": 0\n    },\n    \"refreshTokenLifetime\": {\n      \"inherited\": true,\n      \"value\": 0\n    },\n    \"accessTokenLifetime\": {\n      \"inherited\": true,\n      \"value\": 0\n    }\n  },\n  \"advancedOAuth2ClientConfig\": {\n    \"name\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"descriptions\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"requestUris\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"responseTypes\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"grantTypes\": {\n      \"inherited\": false,\n      \"value\": [\n        \"password\"\n      ]\n    },\n    \"contacts\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"tokenEndpointAuthMethod\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"sectorIdentifierUri\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"subjectType\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"updateAccessToken\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"clientUri\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"logoUri\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"policyUri\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"isConsentImplied\": {\n      \"inherited\": true,\n      \"value\": true\n    },\n    \"mixUpMitigation\": {\n      \"inherited\": true,\n      \"value\": true\n    }\n  },\n  \"coreOpenIDClientConfig\": {\n    \"claims\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"postLogoutRedirectUri\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"clientSessionUri\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"defaultMaxAge\": {\n      \"inherited\": true,\n      \"value\": 0\n    },\n    \"defaultMaxAgeEnabled\": {\n      \"inherited\": true,\n      \"value\": true\n    },\n    \"defaultAcrValues\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    },\n    \"jwtTokenLifetime\": {\n      \"inherited\": true,\n      \"value\": 0\n    }\n  },\n  \"signEncOAuth2ClientConfig\": {\n    \"jwksUri\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"jwksCacheTimeout\": {\n      \"inherited\": true,\n      \"value\": 0\n    },\n    \"jwkStoreCacheMissCacheTime\": {\n      \"inherited\": true,\n      \"value\": 0\n    },\n    \"tokenEndpointAuthSigningAlgorithm\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"jwkSet\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"idTokenSignedResponseAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"idTokenEncryptionEnabled\": {\n      \"inherited\": true,\n      \"value\": true\n    },\n    \"idTokenEncryptionAlgorithm\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"idTokenEncryptionMethod\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"idTokenPublicEncryptionKey\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"clientJwtPublicKey\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"mTLSTrustedCert\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"mTLSSubjectDN\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"mTLSCertificateBoundAccessTokens\": {\n      \"inherited\": true,\n      \"value\": true\n    },\n    \"publicKeyLocation\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"userinfoResponseFormat\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"userinfoSignedResponseAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"userinfoEncryptedResponseAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"userinfoEncryptedResponseEncryptionAlgorithm\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"requestParameterSignedAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"requestParameterEncryptedAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"requestParameterEncryptedEncryptionAlgorithm\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"tokenIntrospectionResponseFormat\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"tokenIntrospectionSignedResponseAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"tokenIntrospectionEncryptedResponseAlg\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    },\n    \"tokenIntrospectionEncryptedResponseEncryptionAlgorithm\": {\n      \"inherited\": true,\n      \"value\": \"string\"\n    }\n  },\n  \"coreUmaClientConfig\": {\n    \"claimsRedirectionUris\": {\n      \"inherited\": true,\n      \"value\": [\n        \"Unknown Type: any\"\n      ]\n    }\n  }\n}"
    },
    "url": {
      "raw": "{{amUrl}}/json{{realm}}/realm-config/agents/OAuth2Client/{{postmanAdminClientId}}",
      "host": [
        "{{amUrl}}"
      ],
      "path": [
        "json{{realm}}",
        "realm-config",
        "agents",
        "OAuth2Client",
        "{{postmanAdminClientId}}"
      ]
    },
    "description": "Create an OAuth 2.0 client for obtaining scopes as an administrator. The access tokens granted by this client are used to perform administrative tasks throughout this collection."
  },
  "response": [
  ]
}