My Catalogs

A catalog entry represents a requestable resource for Access Requests. Each requestable app or collection has a top-level entry in the catalog. These are known as parent catalog entries. Associated requestable entitlements and groups also have an entry in the catalog, known as child entries. For example, a top-level entry for Figma might have two child entries, one for requesting read-only access to Figma and one for requesting edit access.

The parent property in the catalog entry object shows the relationship between child and parent. The child entry's parent property references their respective parent entry identifier. The parent entry's parent property has no value. See the CATALOG-ENTRY diagram in the Relationships model.

Use the My Catalogs API to request for catalog entries that you're allowed to request. You can search for a list of catalog entries based on the entry parent-child relationship using the filter query parameter.

List all of my entries for the default access request catalog
OAuth 2.0:
  • okta.accessRequests.catalog.read

Lists filtered entries for the default access request catalog that you're allowed to request (as the authenticated requestor).

The following are request examples with query parameters:

  1. Lists at most 20 parent (top-level) entries
    /governance/api/v2/catalogs/default/entries?filter=not(parent%20pr)&limit=20
    
  2. Lists the next 20 results of parent entries after a specific cursor
    /governance/api/v2/catalogs/default/entries?filter=not(parent%20pr)&limit=20&after=cen33e47frfMB93gQ8g6
    
  3. Lists at most 8 parent entries with a fuzzy match for "figma"
    /governance/api/v2/catalogs/default/entries?filter=not(parent%20pr)&match=figma&limit=8
    
  4. Lists at most 8 child entries with a specific parent
    /governance/api/v2/catalogs/default/entries?filter=parent%20eq%20%22cen385AlcdqGaY8HE0g2%22&limit=8
    
  5. Lists at most 8 child entries that have "edit" in the name and have a specific parent
    /governance/api/v2/catalogs/default/entries?filter=parent%20eq%20%22cen385AlcdqGaY8HE0g2%22&match=edit&limit=8
    
Request
query Parameters
after
string = 20 characters

The pagination cursor that points to the last record of the previous response.

The maximum number of entries returned in a response is determined by the limit query parameter. If there are more entries to return, the _links.next.href link contains the after cursor for the next page of results.

Example: after=cenp2rjyxK1Js2Fc41d5
filter
required
string <scim-filter>

A required filter expression that returns entries based on the parent property. This filter expression supports the eq and pr operators.

Note: Query parameter percent encoding is required. See Special characters.

Example: filter=not(parent pr)
limit
integer [ 1 .. 200 ]

The maximum number of records returned in a response

Example: limit=20
match
string [ 3 .. 50 ] characters

Return catalog entries that match a substring value in the name or description properties. At least three characters are required for fuzzy search.

Example: match=figma
Responses
200

List of all entries in the resource catalog

400

An invalid list request

401

When authentication fails

403

When authorization fails

404

When the requested resource was not found

429

When the rate limit has been exceeded

500

When there is a server fault due to an unexpected error

get/governance/api/v2/my/catalogs/default/entries
Request samples
Response samples
application/json

Lists all entries that have an empty parent

{}

Retrieve an entry from my catalog
OAuth 2.0:
  • okta.accessRequests.catalog.read

Retrieves an entry from my catalog

Request
path Parameters
entryId
required
string = 20 characters

The ID of the catalog entry

Example: cenp2rjyxK1Js2Fc41d5
Responses
200

List of all entries in the resource catalog

400

An invalid list request

401

When authentication fails

403

When authorization fails

404

When the requested resource was not found

429

When the rate limit has been exceeded

500

When there is a server fault due to an unexpected error

get/governance/api/v2/my/catalogs/default/entries/{entryId}
Request samples
Response samples
application/json
{}

Retrieve an entry's request fields
OAuth 2.0:
  • okta.accessRequests.request.read

Retrieves request fields for my catalog entry

Request fields are determined by evaluating the entry's associated request conditions for the requester.

The highest priority matching condition determines the approval sequence that will be used for the requester.

If that approval sequence has requester fields, then they will be returned as a request field.

If the request can lead to any separation of duty conflicts, then the risk assessment is present. The risk assessment indicates whether request submission is allowed or restricted and includes rules that lead to the possible conflicts. If request submission is allowed, then the request fields are determined by the associated approval sequence.

Request
path Parameters
entryId
required
string = 20 characters

The ID of the catalog entry

Example: cenp2rjyxK1Js2Fc41d5
Responses
200

Get requester fields for an entry

401

When authentication fails

404

When the requested resource was not found

get/governance/api/v2/my/catalogs/default/entries/{entryId}/request-fields
Request samples
Response samples
application/json
{
  • "data": [
    • {
      • "id": "ACCESS_DURATION",
      • "type": "DURATION",
      • "required": false,
      • "readOnly": true,
      • "value": "P4D"
      }
    ]
}

List all of my catalog entry users
OAuth 2.0:
  • okta.accessRequests.catalog.read

Lists all users who match the filtered query and can also view and request the entry.

A list of users is only returned if the entry has the requestOnBehalfOfSettings enabled, a filter is specified, and the authorized user is able to request on behalf of other users.

Examples

Request examples with query parameters:

  1. Filter users with a last name that starts with "Smi"
    /governance/api/v2/my/catalogs/default/entries/{entryId}/users?filter=lastName%20sw%20%22Smi%22
    
  2. Filter for users with a first name that begins with "John"
    /governance/api/v2/my/catalogs/default/entries/{entryId}/users?filter=firstName%20sw%20%22John%22
    
  3. Search for users with a first or last name that begins with "John"
    /governance/api/v2/my/catalogs/default/entries/{entryId}/users?filter=firstName%20sw%20%22John%22%20OR%20lastName%20sw%20%22John%22
    
Request
path Parameters
entryId
required
string = 20 characters

The ID of the catalog entry

Example: cenp2rjyxK1Js2Fc41d5
query Parameters
after
string

The pagination cursor that points to the last record of the previous request.

Example: after=00u68w6vzKLultXS97g6
filter
required
string <scim-filter>

A required filter expression that returns users based on the firstName or lastName properties. This filter expression supports the sw operator.

Note: Query parameter percent encoding is required. See Special characters.

Example: filter=firstName sw "John" OR lastName sw "John"
limit
integer [ 1 .. 200 ]
Default: 20

The maximum number of records returned in a response

Responses
200

List of all requesters who may be able to request the entry

400

An invalid list request

401

When authentication fails

403

When authorization fails

404

When the requested resource was not found

429

When the rate limit has been exceeded

500

When there is a server fault due to an unexpected error

get/governance/api/v2/my/catalogs/default/entries/{entryId}/users
Request samples
Response samples
application/json

Lists all users who may be requesters for the entry that the authorized user could request on behalf of

{
  • "data": [
    • {
      • "id": "00u28w6vzKKultXP98g5",
      • "email": "jessie.smith@example.com",
      • "firstName": "Jessie",
      • "lastName": "Smith"
      },
    • {
      • "id": "00u28w6vzKKultXP97g5",
      • "email": "jacky.chen@example.com",
      • "firstName": "Jacky",
      • "lastName": "Chen"
      },
    • {
      • "id": "00u28w6vzKKultXP97g6",
      • "email": "tal.gupta@example.com",
      • "firstName": "Tal",
      • "lastName": "Gupta"
      },
    • {
      • "id": "00u28w6vzKKultXP97g6",
      • "email": "chad.Beauchamp-Williams-Wrightman-Smithson@example.com",
      • "firstName": "Chad",
      • "lastName": "Beauchamp-Williams-Wrightman-Smithson"
      },
    • {
      • "id": "00u28w8vzKLultXP97g6",
      • "email": "Lorena.FernándezDeCórdoba@example.com",
      • "firstName": "Lorena",
      • "lastName": "Fernández de Córdoba"
      },
    • {
      • "id": "00u68w6vzKLultXS97g6",
      • "email": "SeraphinianaAlessandrovich.Raskolnikov-Karamazov-Smirnovich@example.com",
      • "firstName": "SeraphinianaAlessandrovich",
      • "lastName": "Raskolnikov-Karamazov-Smirnovich"
      }
    ],
}

Retrieve a users request-fields for an entry
OAuth 2.0:
  • okta.accessRequests.catalog.read

Retrieves the entry's request fields for the specified requester. Request fields for the entry are only returned if the entry has request on behalf of enabled, and the authorized user is able to request on behalf of other requesters.

If the request can lead to any separation of duty conflicts, then the risk assessment is present. The risk assessment indicates whether request submission is allowed or restricted and includes rules that lead to the possible conflicts. If request submission is allowed, then the request fields are determined by the associated approval sequence for the risk level.

Request
path Parameters
entryId
required
string = 20 characters

The ID of the catalog entry

Example: cenp2rjyxK1Js2Fc41d5
userId
required
string = 20 characters

The id of the user

Example: 00ucvnr9rbONeZdRp1d7
Responses
200

Get requester fields for an entry

401

When authentication fails

404

When the requested resource was not found

get/governance/api/v2/my/catalogs/default/entries/{entryId}/users/{userId}/request-fields
Request samples
Response samples
application/json
{
  • "data": [
    • {
      • "id": "ACCESS_DURATION",
      • "type": "DURATION",
      • "required": false,
      • "readOnly": true,
      • "value": "P4D"
      }
    ]
}