UI Schema

The Okta UI Schema API allows you to control how inputs appear on an enrollment form. The UI Schema API is only available as a part of Okta Identity Engine.

If you're not sure which solution you're using, check the footer on any page of the Admin Console. The version number is appended with E for Identity Engine orgs and C for Classic Engine orgs.

List all UI Schemas
Identity Engine
OAuth 2.0: okta.uischemas.read

Lists all UI Schemas in your org

Responses
200

Success

403

Forbidden

429

Too Many Requests

get/api/v1/meta/uischemas
Request samples
Response samples
application/json
[
  • {
    • "id": "uis4a7liocgcRgcxZ0g7",
    • "uiSchema": {
      },
    • "created": "2022-07-25T12:56:31.000Z",
    • "lastUpdated": "2022-07-26T11:53:59.000Z",
    • "_links": {}
    },
  • {
    • "id": "uis4abjqkkKXVPGAU0g7",
    • "uiSchema": {
      },
    • "created": "2022-07-25T12:56:31.000Z",
    • "lastUpdated": "2022-07-26T11:53:59.000Z",
    • "_links": {}
    }
]

Create a UI Schema
Identity Engine
OAuth 2.0: okta.uischemas.manage

Creates an input for an enrollment form

Request
Request Body schema: application/json
required
object (UISchemaObject)

Properties of the UI schema

buttonLabel
string
Default: "Submit"

Specifies the button label for the Submit button at the bottom of the enrollment form.

object (UIElement)

Specifies the configuration of an input field on an enrollment form

label
string

Label name for the UI element

object

UI Schema element options object

scope
string

Specifies the property bound to the input field. It must follow the format #/properties/PROPERTY_NAME where PROPERTY_NAME is a variable name for an attribute in profile editor.

type
string

Specifies the relationship between this input element and scope. The Control value specifies that this input controls the value represented by scope.

label
string
Default: "Sign in"

Specifies the label at the top of the enrollment form under the logo.

type
string

Specifies the type of layout

Responses
200

Success

400

Bad Request

403

Forbidden

429

Too Many Requests

post/api/v1/meta/uischemas
Request samples
application/json
{
  • "uiSchema": {
    • "type": "Group",
    • "elements": [
      ],
    • "buttonLabel": "Submit",
    • "label": "Sign in"
    }
}
Response samples
application/json
{
  • "id": "uis4a7liocgcRgcxZ0g7",
  • "uiSchema": {
    • "type": "Group",
    • "label": "Sign in",
    • "buttonLabel": "Submit",
    • "elements": [
      ]
    },
  • "created": "2022-07-25T12:56:31.000Z",
  • "lastUpdated": "2022-07-26T11:53:59.000Z",
  • "_links": {}
}

Retrieve a UI Schema
Identity Engine
OAuth 2.0: okta.uischemas.read

Retrieves a UI Schema by id

Request
path Parameters
id
required
string

The unique ID of the UI Schema

Example: uis4a7liocgcRgcxZ0g7
Responses
200

Success

403

Forbidden

404

Not Found

429

Too Many Requests

get/api/v1/meta/uischemas/{id}
Request samples
Response samples
application/json
{
  • "id": "uis4a7liocgcRgcxZ0g7",
  • "uiSchema": {
    • "type": "Group",
    • "label": "Sign in",
    • "buttonLabel": "Submit",
    • "elements": [
      ]
    },
  • "created": "2022-07-25T12:56:31.000Z",
  • "lastUpdated": "2022-07-26T11:53:59.000Z",
  • "_links": {}
}

Replace a UI Schema
Identity Engine
OAuth 2.0: okta.uischemas.manage

Replaces a UI Schema by id

Request
path Parameters
id
required
string

The unique ID of the UI Schema

Example: uis4a7liocgcRgcxZ0g7
Request Body schema: application/json
required
object (UISchemaObject)

Properties of the UI schema

buttonLabel
string
Default: "Submit"

Specifies the button label for the Submit button at the bottom of the enrollment form.

object (UIElement)

Specifies the configuration of an input field on an enrollment form

label
string

Label name for the UI element

object

UI Schema element options object

scope
string

Specifies the property bound to the input field. It must follow the format #/properties/PROPERTY_NAME where PROPERTY_NAME is a variable name for an attribute in profile editor.

type
string

Specifies the relationship between this input element and scope. The Control value specifies that this input controls the value represented by scope.

label
string
Default: "Sign in"

Specifies the label at the top of the enrollment form under the logo.

type
string

Specifies the type of layout

Responses
200

Success

400

Bad Request

403

Forbidden

404

Not Found

429

Too Many Requests

put/api/v1/meta/uischemas/{id}
Request samples
application/json
{
  • "uiSchema": {
    • "type": "Group",
    • "elements": [
      ],
    • "buttonLabel": "Submit",
    • "label": "Sign in"
    }
}
Response samples
application/json
{
  • "id": "uis4a7liocgcRgcxZ0g7",
  • "uiSchema": {
    • "type": "Group",
    • "label": "Sign in",
    • "buttonLabel": "Submit",
    • "elements": [
      ]
    },
  • "created": "2022-07-25T12:56:31.000Z",
  • "lastUpdated": "2022-07-26T11:53:59.000Z",
  • "_links": {}
}

Delete a UI Schema
Identity Engine
OAuth 2.0: okta.uischemas.manage

Deletes a UI Schema by id

Request
path Parameters
id
required
string

The unique ID of the UI Schema

Example: uis4a7liocgcRgcxZ0g7
Responses
204

No Content

400

Bad Request

403

Forbidden

404

Not Found

429

Too Many Requests

delete/api/v1/meta/uischemas/{id}
Request samples
Response samples
application/json
{
  • "errorCode": "E0000001",
  • "errorSummary": "Api validation failed: {0}",
  • "errorLink": "E0000001",
  • "errorId": "sampleiCF-8D5rLW6myqiPItW",
  • "errorCauses": [ ]
}