list_glossary_terms

CatalogApi.list_glossary_terms(glossary_id, role_id, limit=None, offset=None, sortorder=None, sortby=None, filter_expression=None, projection_expression=None, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)

List all the terms in a glossary

Returns the terms defined in a glossary. Requires read-only access or higher on the glossary. Read next_available in the response to know whether another page exists.

Parameters:
  • glossary_id (str) – Identifier of the glossary. (required)

  • role_id (str) – User role id (required)

  • limit (int) – Maximum number of terms to return in one page.

  • offset (int) – 1-based index of the first term to return, so offset=1 is the first page and offset=101 is the second page at the default limit.

  • sortorder (str) – Direction to sort by.

  • sortby (str) – Term field to sort by. Must be a text field present on every term, such as TermName, Definition, GlossaryName, CreatedBy, CreatedTime, LastModifiedBy or LastModifiedTime.

  • filter_expression (str) – Filter as one or more Field:Value pairs, comma-separated and combined with AND, for example TermName:active*. Any field on the item may be used. Matching is case-insensitive; TermName also supports * as a wildcard against the whole value, so use a trailing * for a prefix search. Pairs without a colon are ignored, and a filter with no valid pairs returns everything.

  • projection_expression (str) – Comma-separated list of fields to return; all other fields are omitted from each term.

  • _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:

TermsList

Returns:

Returns the result object.

Request and Response Examples

HTTP: GET /glossaries/{glossary_id}/terms

Success (HTTP 200)

Successful API response

Request / response example

{
  "Terms": [
    {
      "TermId": "a5c8e2f1-7b34-4d69-8e0a-2f6b9c1d4e73",
      "TermName": "ActiveCustomer",
      "GlossaryId": "3d9a7c14-6b2e-4f80-91ac-5e7d8b3f2a61",
      "GlossaryName": "CustomerMetrics",
      "Definition": "A customer with at least one order in the trailing 90 days.",
      "DataReferences": [
        {
          "AssetType": "dataset",
          "Assets": [
            {
              "DatasourceId": "ds-8f2e1a2b",
              "AssetId": "asset-4c7a8f2e",
              "AssetName": "customers",
              "Columns": [
                "customer_id",
                "status"
              ]
            }
          ]
        }
      ],
      "CreatedBy": "jdoe",
      "CreatedTime": "2026-07-16 11:00:00",
      "LastModifiedBy": "jdoe",
      "LastModifiedTime": "2026-08-11 08:15:30"
    }
  ],
  "count": 1,
  "total_count": 1,
  "next_available": "no"
}

Errors

Documented error codes: IPV-1050, IPV-1002, GE-1020.

HTTP 400

Invalid input

limit above the page cap

{
  "Message": "IPV-1050 - Out of range for items per page, Limit is 1000"
}

GlossaryId does not exist

{
  "Message": "IPV-1002 - Invalid GlossaryId - 3d9a7c14-6b2e-4f80-91ac-5e7d8b3f2a61, resource not found."
}

HTTP 500

Something went wrong at backend

Request / response example

{
  "Message": "GE-1020 - Unable to update GlossaryTerms table, please retry or contact administrator"
}