---
title: "List Services"
method: GET
path: "/v1/catalog-services"
tags: ["Catalog Services"]
---

# List Services

`GET /v1/catalog-services`

Returns a paginated collection of services.

## Query parameters

- `page[size]` integer
- `page[number]` integer
- `filter` CatalogServiceFilterParameters
  - `id` UuidFieldFilter — Filter using **one** of the following operators: `eq`, `oeq`, `neq`
    - `eq` string — The field exactly matches the provided value.
    - `oeq` string — The field matches any of the provided values.
    - `neq` string — The field does not match the provided value.
  - `name` StringFieldFilter — Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`
    - `eq` string — The field exactly matches the provided value.
    - `contains` string — The field contains the provided value.
    - `ocontains` string — The field contains any of the provided values.
    - `oeq` string — The field matches any of the provided values.
    - `neq` string — The field does not match the provided value.
  - `display_name` StringFieldFilter — Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`
    - `eq` string — The field exactly matches the provided value.
    - `contains` string — The field contains the provided value.
    - `ocontains` string — The field contains any of the provided values.
    - `oeq` string — The field matches any of the provided values.
    - `neq` string — The field does not match the provided value.
  - `custom_fields` union — Filter by custom fields using dot-notation to specify the custom field. Filter operators are dictated by the custom field type. For example: - `filter[custom_fields.owner]` - `filter[custom_fields.owner][neq]=kong` - `filter[custom_fields.dashboard.link][contains]=https`
    - StringFieldFilter — Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`
      - `eq` string — The field exactly matches the provided value.
      - `contains` string — The field contains the provided value.
      - `ocontains` string — The field contains any of the provided values.
      - `oeq` string — The field matches any of the provided values.
      - `neq` string — The field does not match the provided value.
    - boolean — Filter by a boolean value (true/false).
    - union — Filter by a numeric value.
      - number — Value strictly equals the given numeric value.
      - object
        - `eq` number, required — Value strictly equals the given numeric value.
      - object
        - `lt` number, required — Value is less than the given numeric value.
      - object
        - `lte` number, required — Value is less than or equal to the given numeric value.
      - object
        - `gt` number, required — Value is greater than the given numeric value.
      - object
        - `gte` number, required — Value is greater than or equal to the given numeric value.
  - `labels` LabelsFieldFilter — Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`
    - `eq` string — The field exactly matches the provided value.
    - `contains` string — The field contains the provided value.
    - `ocontains` string — The field contains any of the provided values.
    - `oeq` string — The field matches any of the provided values.
    - `neq` string — The field does not match the provided value.
  - `created_at` union — Filters on the given datetime (RFC-3339) field value.
    - object
      - `eq` string, date-time, required — Value strictly equals given RFC-3339 formatted timestamp in UTC
    - object
      - `lt` string, date-time, required — Value is less than the given RFC-3339 formatted timestamp in UTC
    - object
      - `lte` string, date-time, required — Value is less than or equal to the given RFC-3339 formatted timestamp in UTC
    - object
      - `gt` string, date-time, required — Value is greater than the given RFC-3339 formatted timestamp in UTC
    - object
      - `gte` string, date-time, required — Value is greater than or equal to the given RFC-3339 formatted timestamp in UTC
  - `updated_at` union — Filters on the given datetime (RFC-3339) field value.
    - object
      - `eq` string, date-time, required — Value strictly equals given RFC-3339 formatted timestamp in UTC
    - object
      - `lt` string, date-time, required — Value is less than the given RFC-3339 formatted timestamp in UTC
    - object
      - `lte` string, date-time, required — Value is less than or equal to the given RFC-3339 formatted timestamp in UTC
    - object
      - `gt` string, date-time, required — Value is greater than the given RFC-3339 formatted timestamp in UTC
    - object
      - `gte` string, date-time, required — Value is greater than or equal to the given RFC-3339 formatted timestamp in UTC
- `sort` string — The `asc` suffix is optional as the default sort order is ascending. The `desc` suffix is used to specify a descending order. Multiple sort attributes may be provided via a comma separated list. JSONPath notation may be used to specify a sub-attribute (eg: 'foo.bar desc').

## Response `200`

A paginated list response for a collection of services.

- object
  - `meta` PaginatedMeta, required — returns the pagination information
    - `page` PageMeta, required — Contains pagination query parameters and the total number of objects returned.
      - `number` number, required
      - `size` number, required
      - `total` number, required
  - `data` CatalogService[], required
    - `id` string, uuid, required — The service ID.
    - `name` string, required — The machine name of the Service that uniquely identifies it within the catalog.
    - `display_name` string, required — The display name of the Service.
    - `description` string, nullable, required — Optionally provide a description of the Service.
    - `custom_fields` CustomFields, required — Map of customizable, catalog-defined fields providing information about a service.
    - `labels` Labels, required — Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. Keys must be of length 1-63 characters, and cannot start with "kong", "konnect", "mesh", "kic", or "_".
    - `created_at` string, date-time, required — An ISO-8601 timestamp representation of entity creation date.
    - `updated_at` string, date-time, required — An ISO-8601 timestamp representation of entity update date.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/kong/apis/konnect-api-go-sdk.md) · [All operations](https://skmtc.net/kong/apis/konnect-api-go-sdk/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kong/konnect-api-go-sdk/versions/f920f418f552/schema)
