---
title: "Get a meeting AI note"
method: GET
path: "/api/v1/meetings/{meetingId}/note/ai"
tags: ["Meetings"]
---

# Get a meeting AI note

`GET /api/v1/meetings/{meetingId}/note/ai`

## Request

- Base URL: `https://api.recruitwithatlas.com`
- URL: `https://api.recruitwithatlas.com/api/v1/meetings/{meetingId}/note/ai`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/recruitwithatlas/apis/atlas-api/docs/api/v1/meetings/:meetingId/note/ai/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns the latest AI-generated note for a general meeting, broken into subject/response sections. A valid meeting whose AI notes have not been generated yet returns 200 with an empty `sections` array; 404 is reserved for an unknown or forbidden meeting id.

This endpoint serves **general meetings only**. If the requested ID resolves to a candidate interview, the response is a `422` whose body points at `GET /api/v1/interviews/{interviewId}/note/ai`.

## Path parameters

- `meetingId` string, uuid, required: ID of the meeting to retrieve

## Response `200`

Meeting AI note

- object
  - `status` 'ok', required
  - `data` object, required
    - `meetingId` string, uuid, required
    - `sections` object[], required
      - `subject` string, required: Section heading
      - `response` string, required: Section body (joined from the stored content lines)
    - `generatedAt` string, nullable, required: When the notes row was last generated (updatedAt/createdAt proxy).
    - `modelVersion` string, nullable, required: AI model version. Not currently stored — always null.
    - `sourceTranscriptGeneratedAt` string, nullable, required: Generation time of the transcript the notes were derived from. Not currently stored — always null.

## Other responses

- `401`: Unauthorized - missing or invalid API key
- `404`: Meeting not found or belongs to a different agency
- `422`: meetingId is not a valid UUID, or the ID belongs to an interview (the body then carries `correctEndpoint: "GET /api/v1/interviews/:interviewId/note/ai"`).
- `429`: Too many requests - the caller has exceeded the per-agency rate limit for the tier this endpoint counts against (default per minute: 1200 read / 400 write / 60 upload). Inspect the `RateLimit-*` headers — returned on every response, not only on 429s — and back off until the window resets. See the "Rate limits" section of the introduction for details.

---

[API](https://skmtc.dev/recruitwithatlas/apis/atlas-api.md) - [All operations](https://skmtc.dev/recruitwithatlas/apis/atlas-api/llms.txt) - [OpenAPI document](https://skmtc.dev/recruitwithatlas/apis/atlas-api/revisions/65a1374ebd70?raw)
