---
title: "Get Class Private Messages"
method: GET
path: "/chatrooms/{room_name}/chat/private"
tags: ["chatrooms"]
---

# Get Class Private Messages

`GET /chatrooms/{room_name}/chat/private`

The quiet lane, as this caller is allowed to see it. Oldest first.

This is the ONLY delivery path — clients poll it. A teacher's count of
waiting questions goes up when they ask for it, never when a student sends
one, which is precisely the property Sinead asked for.

WHAT EACH CALLER GETS:
  * teaching staff, and anyone who may read the class report: every private
    thread in the class (the parent room and all of its breakouts).
  * a student: their own thread only — what they asked, and what staff
    replied to them.

`since_ms` makes the poll cheap: pass the newest `ts` you already hold.
Read access does NOT require being in the room right now, so a coordinator
can audit the lane a week later; sending does (`_require_room_participant`).

## Path parameters

- `room_name` string, required

## Query parameters

- `since_ms` integer, nullable

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored.md) · [All operations](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fluentea/aurqa-language-learning-platform-refactored/revisions/78f314acd8bf/schema)
