<Intro>

<EndpointHeader />

<Description>

Returns the workspace's Realtime apps as a paginated list, filterable by a case-insensitive `name` substring. Each entry carries the app's configuration and connection details (`app_id`, `region`) but never key secrets; manage keys with `listRealtimeAppKeys` and `createRealtimeAppKey`.

</Description>

</Intro>

<Parameters in="query">

<Parameter name="name" type="string">

<Description>

Substring match against the app name (case-insensitive).

</Description>

</Parameter>

<Parameter name="sort" type="string">

<Description>

Field to sort by.

</Description>

<Description>

Possible values: `created_at`, `name`

</Description>

</Parameter>

<Parameter name="order" type="string">

<Description>

Sort direction. Defaults to `desc` (newest/largest first).

</Description>

<Description>

Possible values: `asc`, `desc`

</Description>

</Parameter>

<Parameter name="limit" type="integer">

<Description>

Maximum number of items to return per page.

</Description>

</Parameter>

<Parameter name="starting_after" type="string">

<Description>

Cursor from the `next_cursor` field of a previous list response. Returns items immediately after the cursor position in the current sort order.

</Description>

</Parameter>

<Parameter name="ending_before" type="string">

<Description>

Cursor from the `prev_cursor` field of a previous list response. Returns items immediately before the cursor position in the current sort order.

</Description>

</Parameter>

<Parameter name="include_total" type="boolean">

<Description>

When true, the response includes a `total` field with the total number of items matching the request's filters across all pages.

</Description>

</Parameter>

</Parameters>

<Payload kind="response">

<Field name="data" type="array of object" required>

<FieldChildren kind="response">

<Field name="created_at" type="string" prefix="data." required />

<Field name="updated_at" type="string" prefix="data." required />

<Field name="client_events" type="boolean" prefix="data." required>

<Description>

Allow clients to trigger events directly (client events).

</Description>

</Field>

<Field name="connection_counting" type="boolean" prefix="data." required>

<Description>

Emit connection-count events on channels.

</Description>

</Field>

<Field name="authorized_connections" type="boolean" prefix="data." required>

<Description>

Require every connection to be authorized.

</Description>

</Field>

<Field name="id" type="string" prefix="data." required />

<Field name="app_id" type="integer" prefix="data." required>

<Description>

The numeric Realtime app id. Use it together with a key and secret to initialize a Realtime client/server SDK. Immutable.

</Description>

</Field>

<Field name="name" type="string" prefix="data." required />

<Field name="region" type="object" prefix="data." required>

<Description>

The region this app runs in. Unlike other Bird products, a Realtime app can be placed in a region other than the workspace's home region. Immutable after creation.

</Description>

</Field>

<Field name="status" type="string" prefix="data." required>

<Description>

Lifecycle state of the app. `active` apps serve connections; `suspended` apps are provisioned but reject connections.

</Description>

<Description>

Possible values: `active`, `suspended`

</Description>

</Field>

</FieldChildren>

</Field>

<Field name="next_cursor" type="nullable string" required>

<Description>

Cursor for the next page. Pass back as `starting_after` to advance forward. Null when no next page exists.

</Description>

</Field>

<Field name="prev_cursor" type="nullable string" required>

<Description>

Cursor for the previous page. Pass back as `ending_before` to step backward. Null when no previous page exists.

</Description>

</Field>

<Field name="refresh_cursor" type="nullable string" required>

<Description>

Refresh anchor. Pass back as `ending_before` later to fetch items that have appeared since this response. Non-null whenever `data` is non-empty; null only on an empty page. Distinct from `prev_cursor`.

</Description>

</Field>

<Field name="total" type="nullable integer">

<Description>

Total number of items matching the request's filters across all pages. Present only when `include_total=true` was passed; otherwise null.

</Description>

</Field>

</Payload>