Skip to main content

List Package Configs

List matching package configs for your organization with cursor-based pagination. Each entry includes its document-type slots, pass criteria, and links.

List the matching package configs that belong to your organization. Results are cursor-paginated and ordered newest first by default. Each entry is the same shape returned when the config was created, including its document-type slots, pass criteria, and resource links.

Pagination is cursor-based. The response carries a pagination block with total, limit, has_more, and next_cursor. To fetch the next page, pass the next_cursor value back as the cursor query parameter. When has_more is false, you have reached the last page.

Use this endpoint to enumerate the package configs available before triggering a run, or to drive a selection UI. Every config is tenant-scoped, so you only ever see configs created under your own organization.

The cursor encodes the last row's (created_at, id) pair, so pages stay stable even when two configs share a creation timestamp, and a config created while you page never shifts rows you have already read when walking asc. limit accepts 1–100 and defaults to 20; pagination.total counts every config matching the query, not just the current page.

GET/v1/matching/packages/configs

Query parameters

limitintegerMaximum number of results to return (1–100). Default: 20
cursorstringPagination cursor from a previous response.
orderstringSort direction by created_at: desc or asc. Default: desc

curl

curl -s "https://api.talonic.com/v1/matching/packages/configs?limit=20" \
  -H "Authorization: Bearer tlnc_your_api_key"

Response

Response fields

dataarrayArray of package config objects.
data[].idstringPackage config UUID.
data[].namestringPackage config name.
data[].document_type_configsarrayDocument-type slots.
data[].pass_criteriaobjectPass/fail aggregation rules.
data[].created_atstringISO 8601 creation timestamp.
data[].updated_atstringISO 8601 last-update timestamp.
data[].linksobjectRelated resource URLs (self, runs).
pagination.totalintegerTotal number of configs matching the query.
pagination.limitintegerMaximum results per page.
pagination.has_morebooleanWhether more results exist beyond this page.
pagination.next_cursorstring | nullCursor to fetch the next page. Null if no more results.

Response

{
  "data": [
    {
      "id": "4f2a9c1e-8b3d-47e6-9a05-c7d1e2f3a4b5",
      "name": "Shipment bundle",
      "document_type_configs": [
        { "document_type": "invoice", "matching_config_id": "1a2b3c4d-5e6f-4781-92a3-b4c5d6e7f809", "presence": "required" },
        { "document_type": "delivery_note", "matching_config_id": "2b3c4d5e-6f70-4192-a3b4-c5d6e7f8091a", "presence": "expected" }
      ],
      "pass_criteria": {
        "all_required_matched": true,
        "min_confidence": 0.8,
        "allow_review_on_expected": true
      },
      "created_at": "2024-09-14T10:32:00.000Z",
      "updated_at": "2024-09-14T10:32:00.000Z",
      "links": {
        "self": "/v1/matching/packages/configs/4f2a9c1e-8b3d-47e6-9a05-c7d1e2f3a4b5",
        "runs": "/v1/matching/packages/runs?package_config_id=4f2a9c1e-8b3d-47e6-9a05-c7d1e2f3a4b5"
      }
    }
  ],
  "pagination": {
    "total": 3,
    "limit": 20,
    "has_more": false,
    "next_cursor": null
  }
}
The default ordering is newest first. Pass order=asc to walk configs oldest-first, which is convenient when you want a stable cursor over a config set that is still growing.

Errors

Error responses

401unauthorizedMissing or invalid API key.
429rate_limitedToo many requests. Retry after the period indicated in the Retry-After header.

Frequently asked questions

How does cursor pagination work here?+
Pass the next_cursor value from the previous response as the cursor query parameter to fetch the next page. When has_more is false, you have reached the last page.
Can I see configs from other tenants?+
No. Every config is scoped to your organization. You only ever see configs created under your own tenant.
What is included in each list entry?+
Each entry is the full config shape returned at creation: name, document-type slots with matching config IDs and presence rules, pass criteria, timestamps, and links to the config itself and its filtered run list.
What is the maximum page size?+
100. The limit parameter is clamped to the 1–100 range and defaults to 20, so requesting limit=500 silently returns 100 rows; keep paging with next_cursor for the rest.