Skip to main content

application_user_schemas

Creates, updates, deletes, gets or lists an application_user_schemas resource.

Overview​

Nameapplication_user_schemas
TypeResource
Idokta.meta.application_user_schemas

Fields​

The following fields are returned by SELECT queries:

successful operation

NameDatatypeDescription
idstringURI of user schema
namestringName of the schema
$schemastringJSON schema version identifier
_linksobjectSpecifies link relations (see Web Linking) available using the JSON Hypertext Application Language specification. This object is used for dynamic discovery of related resources and lifecycle operations.
createdstringTimestamp when the schema was created
definitionsobjectUser profile subschemas The profile object for a user is defined by a composite schema of base and custom properties using a JSON path to reference subschemas. The #base properties are defined and versioned by Okta, while #custom properties are extensible. Custom property names for the profile object must be unique and can't conflict with a property name defined in the #base subschema.
lastUpdatedstringTimestamp when the schema was last updated
propertiesobjectUser Object Properties
titlestringUser-defined display name for the schema
typestringType of root schema

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
get_application_user_schemaselectappId, subdomainRetrieves the default schema for an app user.

The User Types feature does not extend to apps. All users assigned to a given app use the same app user schema. Therefore, unlike the user schema operations, the app user schema operations all specify default and don't accept a schema ID.
update_application_user_profileupdateappId, subdomainUpdates the app user schema. This updates, adds, or removes one or more custom profile properties or the nullability of a base property in the app user schema for an app. Changing a base property's nullability (for example, the value of its required field) is allowed only if it is nullable in the default predefined schema for the app.

> Note: You must set properties explicitly to null to remove them from the schema; otherwise, POST is interpreted as a partial update.

The User Types feature does not extend to apps. All users assigned to a given app use the same app user schema. Therefore, unlike the user schema operations, the app user schema operations all specify default and don't accept a schema ID.

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
appIdstringApplication ID
subdomainstring(default: my-org)

SELECT examples​

Retrieves the default schema for an app user.

The User Types feature does not extend to apps. All users assigned to a given app use the same app user schema. Therefore, unlike the user schema operations, the app user schema operations all specify default and don't accept a schema ID.

SELECT
id,
name,
$schema,
_links,
created,
definitions,
lastUpdated,
properties,
title,
type
FROM okta.meta.application_user_schemas
WHERE appId = '{{ appId }}' -- required
AND subdomain = '{{ subdomain }}' -- required
;

UPDATE examples​

Updates the app user schema. This updates, adds, or removes one or more custom profile properties or the nullability of a base property in the app user schema for an app. Changing a base property's nullability (for example, the value of its required field) is allowed only if it is nullable in the default predefined schema for the app.

> Note: You must set properties explicitly to null to remove them from the schema; otherwise, POST is interpreted as a partial update.

The User Types feature does not extend to apps. All users assigned to a given app use the same app user schema. Therefore, unlike the user schema operations, the app user schema operations all specify default and don't accept a schema ID.

UPDATE okta.meta.application_user_schemas
SET
definitions = '{{ definitions }}',
properties = '{{ properties }}',
title = '{{ title }}'
WHERE
appId = '{{ appId }}' --required
AND subdomain = '{{ subdomain }}' --required
RETURNING
id,
name,
$schema,
_links,
created,
definitions,
lastUpdated,
properties,
title,
type;