---
title: "List subjects"
method: GET
path: "/api/internal/subjects"
tags: ["Cloud Internal"]
---

# List subjects

`GET /api/internal/subjects`

List subjects on the UI.

## Query parameters

- `page` integer
- `pageSize` integer
- `search` string
- `sort` 'key:asc' | 'key:desc' | 'displayName:asc' | 'displayName:desc'

## Response `200`

The request has succeeded.

- SubjectPaginatedResponse — Paginated response
  - `items` Subject[], required — The items in the current page.
    - `createdAt` string, date-time, required — Timestamp of when the resource was created.
    - `currentPeriodEnd` string, date-time — The end of the current period for the subject.
    - `currentPeriodStart` string, date-time — The start of the current period for the subject.
    - `deletedAt` string, date-time — Timestamp of when the resource was permanently deleted.
    - `displayName` string, nullable — A human-readable display name for the subject.
    - `id` string, required — A unique identifier for the subject.
    - `key` string, required — A unique, human-readable identifier for the subject. This is typically a database ID or a customer key.
    - `metadata` object, nullable — Metadata for the subject.
    - `stripeCustomerId` string, nullable — The Stripe customer ID for the subject.
    - `updatedAt` string, date-time, required — Timestamp of when the resource was last updated.
  - `page` integer, required — The page index.
  - `pageSize` integer, required — The maximum number of items per page.
  - `totalCount` integer, required — The total number of items.

## Other responses

- `400` — The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
- `401` — The request has not been applied because it lacks valid authentication credentials for the target resource.
- `403` — The server understood the request but refuses to authorize it.
- `412` — One or more conditions given in the request header fields evaluated to false when tested on the server.
- `500` — The server encountered an unexpected condition that prevented it from fulfilling the request.
- `503` — The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay.
- `default` — An unexpected error response.

---

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