# List members on a presence channel

`GET /v1/realtime/apps/{realtime_app_id}/channels/{channel_name}/members`

Lists the member IDs currently subscribed to a presence channel. IDs only: `member_info` (the profile data attached by your authorization endpoint) is delivered to subscribed clients over the realtime connection and is not available over REST.

## Code samples

**TypeScript**

```ts
const { members } = await bird.realtime.channels.members("rap_01krdgeqcxet5s7t44vh8rt9mg", "presence-lobby");
for (const member of members) console.log(member.member_id);
```

Examples: [TypeScript](/docs/api/reference/list-realtime-app-channel-members.ts.md) · [Python](/docs/api/reference/list-realtime-app-channel-members.py.md) · [Go](/docs/api/reference/list-realtime-app-channel-members.go.md) · [PHP](/docs/api/reference/list-realtime-app-channel-members.php.md) · [cURL](/docs/api/reference/list-realtime-app-channel-members.curl.md)

## Path parameters

- `realtime_app_id` (string): ID of the Realtime app (`rap_` prefix), as returned when the app was created.
- `channel_name` (string): Name of the presence channel whose members to list.

## Response body

- `members` (array of object, required)
- `members.member_id` (string, required): An app-defined member ID for your application's end user, assigned when your auth server authorizes them. Use up to 128 URL-safe characters because member IDs appear directly in API request paths. The value can include `+ : @ . _ -`, but not `/ ? # %` or whitespace.

## Related resources

- [Realtime](/realtime-api) (product)
- [Build your first integration](/learn/paths/integration) (course)
- [Send your first realtime event](/docs/get-started/send-your-first-realtime-event) (docs)

[Get an implementation brief](/learn/workspace?topic=realtime)
