---
title: "List subscriptions"
method: GET
path: "/openmeter/subscriptions"
tags: ["OpenMeter Subscriptions"]
---

# List subscriptions

`GET /openmeter/subscriptions`

## Query parameters

- `page` object
  - `size` integer — The number of items to include per page.
  - `number` integer — The page number.
- `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').
- `filter` ListSubscriptionsParamsFilter — Filter options for listing subscriptions.
  - `id` union — Filters on the given ULID field value by exact match. All properties are optional; provide exactly one to specify the comparison.
    - string — ULID (Universally Unique Lexicographically Sortable Identifier).
    - object
      - `eq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
      - `oeq` string — Returns entities that exact match any of the comma-delimited ULIDs in the filter string.
      - `neq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
  - `customer_id` union — Filters on the given ULID field value by exact match. All properties are optional; provide exactly one to specify the comparison.
    - string — ULID (Universally Unique Lexicographically Sortable Identifier).
    - object
      - `eq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
      - `oeq` string — Returns entities that exact match any of the comma-delimited ULIDs in the filter string.
      - `neq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
  - `status` union — Filters on the given string field value by exact match. All properties are optional; provide exactly one to specify the comparison.
    - string
    - object
      - `eq` string — Value strictly equals the given string value.
      - `oeq` string — Returns entities that exact match any of the comma-delimited phrases in the filter string.
      - `neq` string — Value does not equal the given string value.
  - `plan_id` union — Filters on the given ULID field value by exact match. All properties are optional; provide exactly one to specify the comparison.
    - string — ULID (Universally Unique Lexicographically Sortable Identifier).
    - object
      - `eq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
      - `oeq` string — Returns entities that exact match any of the comma-delimited ULIDs in the filter string.
      - `neq` string — ULID (Universally Unique Lexicographically Sortable Identifier).
  - `plan_key` union — Filters on the given string field value by exact match. All properties are optional; provide exactly one to specify the comparison.
    - string
    - object
      - `eq` string — Value strictly equals the given string value.
      - `oeq` string — Returns entities that exact match any of the comma-delimited phrases in the filter string.
      - `neq` string — Value does not equal the given string value.

## Response `200`

Page paginated response.

- SubscriptionPagePaginatedResponse — Page paginated response.
  - `data` BillingSubscription[], required
    - `id` string, required — ULID (Universally Unique Lexicographically Sortable Identifier).
    - `labels` Labels — 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 — [RFC3339](https://tools.ietf.org/html/rfc3339) formatted date-time string in UTC.
    - `updated_at` string, date-time, required — [RFC3339](https://tools.ietf.org/html/rfc3339) formatted date-time string in UTC.
    - `deleted_at` string, date-time — [RFC3339](https://tools.ietf.org/html/rfc3339) formatted date-time string in UTC.
    - `customer_id` string, required — ULID (Universally Unique Lexicographically Sortable Identifier).
    - `plan_id` string — ULID (Universally Unique Lexicographically Sortable Identifier).
    - `invoice_currency` string, required — Three-letter [ISO4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. Custom three-letter currency codes are also supported for convenience.
    - `cost_basis_mode` 'dynamic' | 'pinned', required — Controls how custom-currency cost bases are selected for the subscription.
    - `cost_basis_pins` BillingSubscriptionCostBasisPin[], required — Cost bases pinned to custom-currency pairs for this subscription.
      - `custom_currency_id` string, required — ULID (Universally Unique Lexicographically Sortable Identifier).
      - `invoice_currency` string, required — Three-letter [ISO4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. Custom three-letter currency codes are also supported for convenience.
      - `cost_basis_id` string, required — ULID (Universally Unique Lexicographically Sortable Identifier).
    - `billing_anchor` string, date-time, required — [RFC3339](https://tools.ietf.org/html/rfc3339) formatted date-time string in UTC.
    - `status` 'active' | 'inactive' | 'canceled' | 'scheduled', required — Subscription status.
    - `settlement_mode` 'credit_then_invoice' | 'credit_only' — Settlement mode for billing. Values: - `credit_then_invoice`: Credits are applied first, then any remainder is invoiced. - `credit_only`: Usage is settled exclusively against credits.
  - `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

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found

## Changes

- **2026-08-13** (v3) `1abd3e0f448b` — 3 info
  - added the required property `data/items/cost_basis_mode` to the response with the `200` status
  - added the required property `data/items/cost_basis_pins` to the response with the `200` status
  - added the required property `data/items/invoice_currency` to the response with the `200` status
- **2026-07-03** (v3) `3be06f269447` — 5 info
  - for the `query` request parameter `filter`, the type/format of property `customer_id/anyOf[subschema #2]/oeq` was generalized from `string`/`ArrayEncoding.commaDelimited` to `string`/``
  - for the `query` request parameter `filter`, the type/format of property `id/anyOf[subschema #2]/oeq` was generalized from `string`/`ArrayEncoding.commaDelimited` to `string`/``
  - for the `query` request parameter `filter`, the type/format of property `plan_id/anyOf[subschema #2]/oeq` was generalized from `string`/`ArrayEncoding.commaDelimited` to `string`/``
  - for the `query` request parameter `filter`, the type/format of property `plan_key/anyOf[subschema #2]/oeq` was generalized from `string`/`ArrayEncoding.commaDelimited` to `string`/``
  - …1 more
- **2026-06-12** (v3) `3ecbdfd707eb` — 1 info
  - the `settlement_mode` response's property default value `credit_then_invoice` was removed for the status `200`
- **2026-06-09** (v3) `64826b7e8711` — 1 info
  - added the optional property `data/items/settlement_mode` to the response with the `200` status
- …earlier changes not shown

[Full history](https://skmtc.dev/openmeterio/apis/openmeter-api/changes/openmeter/subscriptions/get.md)

---

[API](https://skmtc.dev/openmeterio/apis/openmeter-api.md) · [All operations](https://skmtc.dev/openmeterio/apis/openmeter-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openmeterio/openmeter-api/revisions/1abd3e0f448b/schema)
