Description

The listCatalog operation exposes a ready-to-use catalog of business list definitions available in Sage Active.

It is designed to simplify how lists are discovered, configured, and executed by providing a predefined set of business-driven list capabilities, including:

This approach allows clients to retrieve consistent and meaningful lists without building custom GraphQL queries or understanding the underlying schema.

Each list definition represents a stable business contract, aligned with Sage Active domains such as:

This operation does not return business data.
It returns metadata describing how lists can be executed using the listExecute operation.

Functionality

Input Parameters

Response

The service returns the catalog entries in the definitions field.
Each definition describes exactly how a list can be executed.

This operation returns static business metadata.
There is no pagination and no edges/nodes pattern.

Key Value
Authorization Bearer Current access Token How to find?
x-api-key Primary or secondary subscription key of your app How to find?
GraphQL Query
query {
  listCatalog(contextContains: "Invoice") {
    definitions {
      entityKey
      context
      filters
      orderBy
      supportsDateRange
    }
  }
}
Example Response
{
  "data": {
    "listCatalog": {
      "definitions": [
        {
          "entityKey": "salesInvoices",
          "context": "Sales Invoices",
          "filters": [
            "All invoices",
            "Validated invoices",
            "Draft",
            "Unpaid - upcoming",
            "Unpaid - overdue",
            "Partially paid - upcoming",
            "Partially paid - overdue",
            "Paid",
            "Credit notes",
            "Payment in advance",
            "National invoices",
            "Foreign invoices",
            "Search by customer id"
          ],
          "orderBy": [
            "Invoice date desc",
            "Invoice number"
          ],
          "supportsDateRange": true
        },
        {
          "entityKey": "salesInvoiceLines",
          "context": "Sales Invoice Lines",
          "filters": [
            "All invoice lines",
            "Validated invoices",
            "Credit note lines",
            "Standard invoice lines",
            "National invoice lines",
            "Foreign invoice lines",
            "Search by customer id",
            "Search by product id"
          ],
          "orderBy": [
            "Invoice date desc",
            "Invoice number",
            "Product",
            "Quantity desc"
          ],
          "supportsDateRange": true
        }
      ]
    }
  }
}

listCatalog Input parameters

Fields Type Description
contextContains String Filters list definitions by matching the value against context

listCatalog Response

Fields Type Description
definitions[] ListDefinition List of available list catalog definitions

Definition fields

Fields Type Description
entityKey String Technical identifier of the list
context String Human-readable business description
filters[] [String] Available business filters to reuse as-is
orderBy[] [String] Allowed sorting rules to reuse as-is
supportsDateRange Boolean Indicates if the list supports date range filtering
Info
  • definitions[]
    The catalog response contains a list of list definitions.
    Each definition describes exactly which input values are allowed when executing a list using listExecute.

    Each definition includes:

    • entityKey
      Technical identifier of the list to reuse as-is as entityKey in listExecute

    • context
      Human-readable description of the list purpose.

    • filters[]
      Predefined business filters that can be reused as-is as filterName in listExecute

    • orderBy[]
      Allowed sorting rules to reuse as-is as orderByName in listExecute

    • supportsDateRange
      Indicates whether the list supports date range filtering.
      Date parameters can only be provided in listExecute when this value is set to true.

  • execution contract
    All values returned by listCatalog define the strict execution contract for listExecute:

    • Filters and sorting rules must be reused as-is
    • Date parameters are only allowed when supportsDateRange is true
    • Any value not explicitly exposed by the catalog is invalid for list execution