# My Notes
- **OpenAPI Version:** `3.1.1`
- **API Version:** `2`
The My Notes API lets developers access [My Notes](https://developers.zoom.us/docs/my-notes/) content programmatically. With the My Notes API, you can surface content in external tools, automate organization, and connect Zoom’s AI meeting recaps to your apps. The My Notes API leverages the Canvas Search API for note search. Rather than duplicating the API documentation here,use this link to the [Canvas File Search](https://developers.zoom.us/docs/api/canvas/#tag/search/post/docs/file_search) endpoint Canvas Search API.
## Servers
- **URL:** `https://api.zoom.us/v2`
## Operations
### List my notes
- **Method:** `GET`
- **Path:** `/my_notes/notes`
- **Tags:** My Notes Management
Retrieves the user's notes associated with a specific meeting.
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `my_notes:read`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `my_notes:read:note`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`
#### Responses
##### Status: 200 A list of notes associated with the meeting.
###### Content-Type: application/json
- **`notes` (required)**
`array` — The list of notes associated with the meeting.
**Items:**
- **`created_time` (required)**
`string`, format: `date-time` — The time when the note was created.
- **`modified_time` (required)**
`string`, format: `date-time` — The time when the note was last modified.
- **`note_id` (required)**
`string` — The unique identifier of the note.
- **`note_link` (required)**
`string`, format: `uri` — The URL for accessing the note.
- **`note_name` (required)**
`string` — The display name of the note.
**Example:**
```json
{
"notes": [
{
"note_id": "note_abc123",
"note_name": "Weekly sync notes",
"note_link": "https://zoom.us/my-notes/note_abc123",
"created_time": "2026-07-01T08:30:00Z",
"modified_time": "2026-07-01T09:15:00Z"
}
]
}
```
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
### Get My Notes content and transcript
- **Method:** `GET`
- **Path:** `/my_notes/notes/{noteId}/content`
- **Tags:** My Notes Management
Retrieve a note from My Notes, including its metadata and note content. Optionally include the associated meeting transcript by setting `include=transcript`.
**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `my_notes_content:read`
**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `my_notes:read:content`
**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`
**Not supported in Gov cluster**
#### Responses
##### Status: 200 The note metadata and content.
###### Content-Type: application/json
- **`manual_note_content` (required)**
`string` — User-authored note content in Markdown format. An empty string when the user has not authored any manual content.
- **`note_id` (required)**
`string` — The unique ID of this note.
- **`note_name` (required)**
`string` — The note name.
- **`note_url` (required)**
`string`, format: `uri` — HTTPS URL that opens this note in the browser.
- **`generated_note_content`**
`string` — AI-generated note content in Markdown format. Omitted when no AI-generated content exists for this note.
- **`transcript`**
`object` — Transcript associated with this note. Returned only when the request's \`include\` query parameter contains \`transcript\` and this note has an associated transcript.
- **`items`**
`array` — Transcript segments ordered by start time.
**Items:**
- **`end_time` (required)**
`string` — End offset of this segment (not a timestamp), formatted as \`HH:MM:SS.mmm\`, relative to the start of the transcript.
- **`speaker_id` (required)**
`string` — Identifier of the speaker for this segment. Matches \`speaker\_id\` in the \`speakers\` list.
- **`start_time` (required)**
`string` — Start offset of this segment (not a timestamp), formatted as \`HH:MM:SS.mmm\`, relative to the start of the transcript.
- **`text` (required)**
`string` — Transcribed text of this transcript segment.
- **`speakers`**
`array` — Speakers referenced by transcript items through \`speaker\_id\`. Each element represents a participant in the meeting, identified either as a Zoom user or through voice recognition.
**Items:**
- **`display_name` (required)**
`string` — The display name of the speaker — the participant's Zoom display name if identified as a Zoom user, or the name assigned during voice recognition otherwise (for example, "Speaker 1").
- **`speaker_id` (required)**
`string` — Identifier of this speaker. Transcript items reference the speaker using this value. This identifier is scoped to the current meeting only; the same person may have a different \`speaker\_id\` in another meeting.
- **`zoom_user_id`**
`string` — The unique Zoom user ID of the participant. Present only when the speaker can be identified as a Zoom user.
**Example:**
```json
{
"note_id": "lXyU1N4sTzSON6cgVwQ48Q",
"note_name": "Weekly Sync Notes",
"note_url": "https://docs.zoom.us/doc/9S1Vnf13RmqZ0ZYAD-k6uA",
"manual_note_content": "Discussion follow-ups to review before the next sync.",
"generated_note_content": "## Summary\n- Reviewed API rollout\n- Confirmed self-test plan",
"transcript": {
"items": [
{
"text": "Hello hello hello.",
"start_time": "00:00:21.743",
"end_time": "00:00:23.923",
"speaker_id": "2049487510"
}
],
"speakers": [
{
"speaker_id": "2049487510",
"display_name": "William Smith",
"zoom_user_id": "OnsTZFMpTUWD_YTo2Z_3Lg"
},
{
"speaker_id": "2049486460",
"display_name": "Speaker 1"
}
]
}
}
```
##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request Invalid request parameters.
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden You do not have permission to access this resource.
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found The requested resource was not found.
##### Status: 413 \*\*HTTP Status Code:\*\* \`413\` \
Payload Too Large The requested content is too large to return.
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/).
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error An internal server error occurred. Please try again later.