list_verticals

VerticalsApi.list_verticals(role_id, projection_expression=None, offset=None, limit=None, sortorder=None, sortby=None, filter_expression=None, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)

List user-accessible verticals

Returns a paginated list of verticals the authenticated user can access, with AccessType on each item. Requires verticals.view on role_id. Resource membership comes from the user identity; role_id authorizes the list action. Pagination is in-memory. Query offset is 1-based when provided (offset=1 is the first item). When offset is omitted, paging starts at the first item. Default limit is 100; values above 1000 raise GE-1028. Results include next_available (“yes” or “no”), count (page size), and total_count. Stop when next_available is “no”. Default sort is LastModifiedTime descending. sortorder values other than desc are treated as ascending. filterExpression uses key:value pairs (AND). VerticalName matches with wildcards; other keys match case-insensitively. projectionExpression is a comma-separated allow-list of keys (no trim around commas). This Lambda maps InvalidInputException and UnauthorizedUserException to HTTP 400, and unhandled/GenericFailure to HTTP 500. Example: GET /verticals?limit=25&offset=1&sortby=LastModifiedTime&sortorder=desc

Parameters:
  • role_id (str) – Amorphic role ID used to authorize the request. Must grant verticals.view. The caller must belong to the role. (required)

  • projection_expression (str) – Comma-separated list of vertical attributes to include on each item. When omitted, DynamoDB vertical fields plus AccessType are returned. Unknown keys are omitted.

  • offset (str) – 1-based index of the first item when provided (offset=1 is the first item). Omit to start at the beginning of the filtered list. Values past the list return an empty page with next_available “no”. offset=0 is converted to -1 and Python slice wrapping applies.

  • limit (str) – Maximum verticals per page. Default 100. Maximum 1000.

  • sortorder (str) – Sort direction. Use asc or desc. Any value other than desc is treated as ascending.

  • sortby (str) – Vertical attribute to sort by. The attribute must exist on returned items or sorting fails with HTTP 500.

  • filter_expression (str) – Comma-separated field:value pairs applied before pagination. VerticalName supports wildcard matching; other fields match case-insensitively. Format: key:value,key:value.

  • _request_timeout (int, tuple(int, int), optional) – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

  • _content_type (str, Optional) – force content-type for the request.

  • _headers (dict, optional) – set to override the headers for a single request; this effectively ignores the headers in the spec for a single request.

  • _host_index (int, optional) – set to override the host_index for a single request; this effectively ignores the host_index in the spec for a single request.

Return type:

VerticalsResponseBody

Returns:

Returns the result object.

Request and Response Examples

HTTP: GET /verticals

Parameter examples

Name

In

Example

role_id

header

"custom-role-123e4567-e89b-12d3-a456-426614174000"

projectionExpression

query

"VerticalId,VerticalName,VerticalType,AccessType"

offset

query

"1"

limit

query

"25"

sortorder

query

"desc"

sortby

query

"LastModifiedTime"

filterExpression

query

"VerticalName:BI*"

Success (HTTP 200)

Paginated list of accessible verticals. When next_available is “no”, the caller has reached the last page.

Request / response example

{
  "verticals": [
    {
      "VerticalId": "11111111-2222-3333-4444-555555555555",
      "VerticalName": "BI Application",
      "VerticalType": "bi",
      "AccessType": "owner",
      "LastModifiedTime": "2026-08-01 10:00:00"
    }
  ],
  "next_available": "no",
  "count": 1,
  "total_count": 1
}

Errors

Documented error codes: AUTH-1001.

HTTP 400

InvalidInputException or UnauthorizedUserException. Body is {“Message”: “<CODE> - <text>”}.

missingRole

{
  "Message": "AUTH-1001 - Missing role information in event header"
}

HTTP 500

GenericFailure, InconsistentMetadata, or unhandled exception. Body is {“Message”: “<CODE> - <text>”} or a raw exception string.

unexpected

{
  "Message": "Unexpected error - <exception text>"
}