OrgOAuthAppRequest

OrgOAuthAppRequest
OrgOAuthAppRequest

The request body to create organization OAuth Application.

JSON Example
{
    "secretRotationExpirationInSeconds": 0,
    "displayName": "string",
    "id": "string",
    "crossOrgAccessClaimsSupported": false,
    "redirectUris": [
        "string"
    ],
    "allowOpenRedirectUris": false,
    "description": "string",
    "accessTokenTTL": 0,
    "isHidden": false,
    "allowedScopes": {
        "organizationScopes": {
            "keptInToken": [
                "string"
            ],
            "allRoles": false,
            "permissions": [
                {
                    "resources": [
                        "string"
                    ],
                    "permissionId": "string"
                }
            ],
            "allPermissions": false,
            "roles": [
                {
                    "name": "string",
                    "resource": "string"
                }
            ]
        },
        "servicesScopes": [
            {
                "keptInToken": [
                    "string"
                ],
                "allRoles": false,
                "permissions": [
                    {
                        "resources": [
                            "string"
                        ],
                        "permissionId": "string"
                    }
                ],
                "serviceDefinitionId": "string",
                "roles": [
                    {
                        "name": "string",
                        "resource": "string"
                    }
                ],
                "allPermissions": false
            }
        ],
        "generalScopes": [
            "string"
        ]
    },
    "maxGroupsInIdToken": 0,
    "allowedOrgs": [
        "string"
    ],
    "ownerOnlySecretRotation": false,
    "secret": "string",
    "publicClient": false,
    "maxCharactersInAccessToken": 0,
    "forcePkce": false,
    "refreshTokenTTL": 0,
    "postLogoutRedirectUris": [
        "string"
    ],
    "serviceDefinitionId": "string",
    "grantTypes": [
        "string"
    ],
    "additionalAttributeMasks": [
        "string"
    ],
    "allowedActorsAudienceExchange": [
        "string"
    ],
    "allowedActorsClientDelegate": [
        "string"
    ]
}
integer As int32 As int32
secretRotationExpirationInSeconds
Optional

The secret rotation expiration in seconds. The old OAuth Application secret will expire after it. If not specified, the default expiration time is 48 hours.
Optionally override the default number of seconds before a new OAuth Application secret will automatically be rotated when using the OAuth Application secret rotation APIs.

string
displayName
Required
Constraints: minLength: 5 maxLength: 100

The organization OAuth Application display name..
The value must be alphanumerical and can contain the following symbols -_.`':@&, and space. International characters are allowed.

string As ^[A-Za-z0-9-_]+$
id
Optional
Constraints: minLength: 5 maxLength: 256

The unique identifier of the OAuth Application (client).. Constraints:
1. Must contain at least 5 and at most 256 characters.
2. Allowed characters: A-Z a-z 0-9 _ -
3. Whitespaces are not allowed.

boolean
crossOrgAccessClaimsSupported
Optional

Indicates whether the oauth client supports cross-org roles.

array of string
redirectUris
Optional

The organization OAuth Application redirect URIs. Relevant only for authorization_code grant type. If allowOpenRedirectUris = true is set, this field must not be specified.

boolean
allowOpenRedirectUris
Optional

Allow client to use open redirections in non-production environments. If true, the redirectUris field must be null. If a client has been created with open redirect uris disabled, it cannot be updated to open redirect uris enabled.

string
description
Required
Constraints: minLength: 2 maxLength: 255

The description of the organization OAuth Application (client).

integer As int32 As int32
accessTokenTTL
Optional

The organization OAuth Application access token time to live in seconds.

boolean
isHidden
Optional

When set to true, this OAuth Application will not be displayed on the UI.

allowedScopes
Required

The allowed general, organization and service scopes of access.

integer As int32 As int32
maxGroupsInIdToken
Optional

The maximum number of groups allowed in the ID token. In case the user is a member in more groups than the value specified in the OAuth client, a URL will be attached to the ID token under the 'ovl' claim.

array of string
allowedOrgs
Optional
Constraints: minItems: 1 maxItems: 15

Allowed Organizations.
Can be used to restrict the client to sub-set of organizations.
The value is a list of organizations IDs, in which users may login using this client. If value is not presented in the request (null value) the client will not be restricted.
Important:
1. This option is available only for service organizations. Consumer organizations cannot pass this value since the client is restricted only to it's managed organization, which cannot be changed.
2. It is not possible to update an organization/s restricted client to be a regular client.
3. The 'allowedOrgs' is ignored during client_credentials flow.
4. If an organization is deleted, its references in allowedOrgs are deleted eventually. 'allowedOrgs' may become empty if an organization gets deleted, which means users cannot login to any organization using this client. The 'allowedOrgs' will be ignored during client_credentials flow.

boolean
ownerOnlySecretRotation
Optional

When set to 'true', the client is not allowed to rotate its own secret. Client rotation will be enabled for organization owner/service owner only using client rotation management APIs. By default, client is enabled to self-rotate its secret.

string As (?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*()_+=\[\]-{|}',./:;<>?`~]).*
secret
Optional

The organization OAuth Application secret

boolean
publicClient
Optional

Mark the client as a public client. Can only be specified at creation time (publicClient cannot be updated).
Public clients:
Cannot have a secret specified (the secret will implicitly be set as an empty string).
Cannot use the 'client_credentials' flow.
Cannot update or rotate their secret.
MUST use PKCE when doing an authorization_code flow.

integer As int32 As int32
maxCharactersInAccessToken
Optional

Limit the number of text characters that will be put in the access token. If the resulting access token would exceed this value, an overflow behavior will be triggered. If overflow is triggered, the returned access token will contain a claim 'ovc' that lists the claims which have overflowed. For example 'ovc' : ['perms', 'authorization_details']. When overflow is triggered, the token will also contain an 'ovl' claim containing a URL which can be can be used to expand the access token and return the claims as JSON. For example 'ovl': 'https://gaz.csp-vidm-prod.com/api/check_access_token' When 'maxCharactersInAccessToken' is not set (the default), a system defined value will be used. Currently this value is 3415 characters, or about 5KB. The purpose of this behavior is to help ensure that the request headers containing the JWT access token do not become arbitrarily large. Your system must be able to handle a token that contains 'ovc' and 'ovl' claims.

boolean
forcePkce
Optional

When set to true, the flag mandates the use of PKCE when doing an authorization_code flow (i.e., the request will fail if PKCE is not used).

integer As int32 As int32
refreshTokenTTL
Optional

The organization OAuth Application refresh token time to live in seconds.

array of string
postLogoutRedirectUris
Optional

Post logout redirect URIs, can be used by a service as a custom redirect destination after logout. For e.g., the service login/home page. Relevant only for the authorization_code grant type.

string
serviceDefinitionId
Optional

Service definition ID of the service using this authorization code webapp. Required in production for tracking purposes.

array of string
grantTypes
Required

The OAuth grant types. Customer organizations support the following grant types: authorization_code, refresh_token, and client_credentials. Service organizations additionally support the following grant types: audience_exchange, client_delegate, context_switch and client_exchange.

array of string
additionalAttributeMasks
Optional

Additional attribute masks that serve as a filter to indicate what custom user attributes (e.g., employee_id) must be included in the ID token after auth flow.

array of string
allowedActorsAudienceExchange
Optional
Constraints: minItems: 0 maxItems: 200

The List of other OAuth App identifiers who can exchange id token from this OAuth App

array of string
allowedActorsClientDelegate
Optional
Constraints: minItems: 0 maxItems: 200

The List of other OAuth App identifiers who can act on behalf of this OAuth App