# Healthcare API - **OpenAPI Version:** `3.1.1` - **API Version:** `2` The Zoom Integration Healthcare APIs allow developers to get, list, and update [clinical notes](https://support.zoom.com/hc/en/article?id=zm_kb\&sysparm_article=KB0080373) programmatically. ## Servers - **URL:** `https://api.zoom.us/v2` ## Operations ### List clinical notes - **Method:** `GET` - **Path:** `/clinical_notes/notes` - **Tags:** clinicalnotes Retrieves a list of clinical notes. The data returned depends on the parameters you provide. If you provide: - Only `note_owner_user_id` - returns all clinical notes owned by that user. - Only `meeting_id` - returns all clinical notes associated with that meeting. - Both `note_owner_user_id` and `meeting_id` - returns only the clinical notes from the specified meeting owned by the specified user. - Neither `note_owner_user_id` nor `meeting_id` - returns all clinical notes available to the requesting user within the account. Prerequisites: - Host user type must have a Pro or higher plan. - Enable the Clinical Notes feature in the host's account. **[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `clinical_note:read:admin` **[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `healthcare:read:list_clinical_notes:admin`,`healthcare:read:list_clinical_notes:master` **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT` #### Parameters ##### `page_size` - **In:** `query` The number of records returned within a single API call. `number`, default: `30` ##### `next_page_token` - **In:** `query` Use the next page token to paginate through a large set of results. The API returns a next page token whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes. `string` ##### `from` - **In:** `query` The start date in `yyyy-MM-dd'T'HH:mm:ss'Z'` UTC format used to retrieve the creation date range of the meeting clinical notes. `string` ##### `to` - **In:** `query` The end date in `yyyy-MM-dd'T'HH:mm:ss'Z'` UTC format used to retrieve the creation date range of the meeting clinical notes. `string` ##### `meeting_id` - **In:** `query` The meeting's universally unique ID (UUID). When you provide a meeting UUID that begins with a / character or contains the // characters, you must double-encode the meeting UUID before making an API request. This optional parameter helps to list clinical notes generated for this meeting ID. `string` ##### `note_owner_user_id` - **In:** `query` The user ID of the user that started the clinical notes session in the meeting and owns the note document. This optional parameter helps to list notes that were owned by this user ID. `string` ##### `include_note_content` - **In:** `query` This optional parameter controls whether the note content is included in the response. Set to true to include the full note content. Note that enabling this may increase response time, especially when a large number of records are returned. For optimal performance, we recommend setting this to false when expecting a high volume of results. `boolean`, default: `false` #### Responses ##### Status: 200 \*\*HTTP Status Code:\*\* \`200\`Successfully listed clinical notes of an account. ###### Content-Type: application/json - **`clinical_notes`** `array` — List of clinical note objects. **Items:** - **`ehr_context`** `object` — EHR Context contains identifiers and metadata that link the clinical note to its corresponding entities in the EHR system, like appointment, patient, or provider. - **`appointment_id`** `string` — The unique identifier for the specific appointment during which the clinical note was created. - **`patient_id`** `string` — The unique identifier for the patient associated with the clinical note. - **`provider_id`** `string` — The unique identifier for the main healthcare provider responsible for the patient's care during the visit. - **`is_note_completed`** `boolean` — Whether or not the clinical note has been marked as completed. - **`meeting_id`** `string` — The unique meeting ID. Each meeting instance generates its own meeting UUID. After a meeting ends, Zoom generats a new UUID for the next instance of the meeting. Use the List past meeting instances API to retrieve a list of UUIDs from past meeting instances. Double encode your UUID when using it for API calls if the UUID begins with a / or contains //. - **`meeting_number`** `integer`, format: `int64` — The meeting's unique identifier in long format, represented as an int64 data type in JSON. - **`note_completed_time`** `string` — The date and time when the clinical note was marked completed. - **`note_content`** `string` — The clinical note content in markdown format. - **`note_created_time`** `string` — The date and time when the clinical note was created. - **`note_end_time`** `string` — The clinical note's end date and time. - **`note_id`** `string` — The note's unique identifier. - **`note_last_modified_time`** `string` — The date and time when the clinical note was last modified. - **`note_last_modified_user_id`** `string` — The user ID of the user who last modified the clinical notes. - **`note_owner_user_id`** `string` — The user ID of the user that started the clinical notes session and owns the note document. - **`note_start_time`** `string` — The clinical note's start date and time. - **`note_title`** `string` — The clinical note title. - **`from`** `string` — The start date in \`yyyy-MM-dd'T'HH:mm:ss'Z'\` UTC format used to retrieve the creation date range of the meeting clinical notes. - **`next_page_token`** `string` — Use the next page token to paginate through a large set of results. The API returns a next page token whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes. - **`page_size`** `number` — The number of records returned within a single API call. - **`to`** `string` — The end date in yyyy-MM-dd'T'HH:mm:ss'Z' UTC format used to retrieve the creation date range of the meeting clinical notes. **Example:** ```json { "page_size": 30, "next_page_token": "ff9d4fb9-8b64-4d6d-93ff-8bc86b18f5c4", "from": "2025-01-01T00:00:00Z", "to": "2025-01-01T23:59:59Z", "clinical_notes": [ { "meeting_id": "I3pHE/RnRbmm+ex2g07sxw==", "meeting_number": 97763643885, "note_id": "ArfRXokSTiGTCSYFVtxNa", "note_owner_user_id": "dqV7XEpnS5G3rGsvqylmjQ", "note_start_time": "2025-05-15T03:01:08.608Z", "note_end_time": "2025-05-15T03:25:59.608Z", "note_created_time": "2025-05-15T03:26:08.608Z", "note_last_modified_time": "2025-05-15T03:26:08.608Z", "note_last_modified_user_id": "dqV7XEpnS5G3rGsvqylmjQ", "note_title": "lingbo test.cn's Zoom Meeting - Version A", "note_content": "Chief Complaint\nThe patient presents with severe stomach pain near the lower abdomen since morning.\\nHistory of Present Illness\\n- The patient is an adult presenting with severe stomach pain.\\n- Pain is located near the lower abdomen, starting this morning.\\n- Attended a dinner party at a restaurant last night.\\n- Denies additional gastrointestinal symptoms.\\nReview of Systems\\n- Gastrointestinal: Reports severe lower abdominal pain. Denies any other gastrointestinal symptoms.\\nSocial History\\n- Recent dining at a restaurant with friends.\\nAssessment and Plan\\n1. Acute Abdominal Pain\\n- Suspected relation to recent meal at a restaurant.\\n- Medication prescribed for pain management.\\n- Advised to avoid eating from outside.\\nPatient Recommendations\\n- Take the prescribed medicines regularly.\\n- Avoid eating from outside.\\n- Return to the clinic if the pain worsens or new symptoms develop.", "is_note_completed": true, "note_completed_time": "2025-05-15T03:26:48.372Z", "ehr_context": { "appointment_id": "6600001", "patient_id": "Patient/75909597", "provider_id": "Practitioner/34373111" } } ] } ``` ##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request Bad Request \*\*Error Code:\*\* \`30008\` \
Query user does not exist. \
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden Forbidden \*\*Error Code:\*\* \`30007\` \
Resource access denied. Please contact your admin. \
\*\*Error Code:\*\* \`30001\` \
Clinical note feature not enabled for this user. \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rate-limits/). ### Get a Clinical Note - **Method:** `GET` - **Path:** `/clinical_notes/notes/{noteId}` - **Tags:** clinicalnotes Gets a single clinical note identified by `noteId`. **[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `clinical_note:read:admin` **[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `healthcare:read:clinical_notes:admin`,`healthcare:read:clinical_notes:master` **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT` #### Parameters ##### `noteId` required - **In:** `path` The clinical note's unique identifier. `string` #### Responses ##### Status: 200 The requested clinical note. ###### Content-Type: application/json - **`ehr_context`** `object` — The electronic health records (EHR) context contains identifiers and metadata that link the clinical note to its corresponding entities in the EHR system, like appointment, patient, or provider. - **`appointment_id`** `string` — The unique identifier of the appointment in which the clinical note was created. - **`patient_id`** `string` — The unique identifier of the patient associated with the clinical note. - **`provider_id`** `string` — The unique identifier of the main healthcare provider responsible for the patient's care during the visit. - **`is_note_completed`** `boolean` — Whether or not the clinical note has been marked as completed. - **`meeting_id`** `string` — The meeting's universally unique identifier (UUID). Each meeting instance generates its own meeting UUID. After a meeting ends, Zoom generats a new UUID for the next instance of the meeting. Use the List past meeting instances API to retrieve a list of UUIDs from past meeting instances. \[Double encode]\(/docs/api/using-zoom-apis/#double-encoding) the UUID if it contains any forward slashes (\`/\`). - **`meeting_number`** `integer`, format: `int64` — The meeting's unique identifier in long format, represented as an int64 data type in JSON. - **`note_completed_time`** `string` — The date and time when the clinical note was marked completed. - **`note_content`** `string` — The clinical note content in markdown format. - **`note_created_time`** `string` — The date and time when the clinical note was created. - **`note_end_time`** `string` — The clinical note's end date and time. - **`note_id`** `string` — The note's unique identifier. - **`note_last_modified_time`** `string` — The date and time when the clinical note was last modified. - **`note_last_modified_user_id`** `string` — The user ID who last modified the clinical notes. - **`note_owner_user_id`** `string` — The user ID who started the clinical notes session and owns the note document. - **`note_start_time`** `string` — The clinical note's start date and time. - **`note_title`** `string` — The clinical note title. **Example:** ```json { "meeting_id": "I3pHE/RnRbmm+ex2g07sxw==", "meeting_number": 97763643885, "note_id": "ArfRXokSTiGTCSYFVtxNa", "note_owner_user_id": "dqV7XEpnS5G3rGsvqylmjQ", "note_start_time": "2025-05-15T03:01:08.608Z", "note_end_time": "2025-05-15T03:25:59.608Z", "note_created_time": "2025-05-15T03:26:08.608Z", "note_last_modified_time": "2025-05-15T03:26:08.608Z", "note_last_modified_user_id": "dqV7XEpnS5G3rGsvqylmjQ", "note_title": "lingbo test.cn's Zoom Meeting - Version A", "note_content": "Chief Complaint\nThe patient presents with severe stomach pain near the lower abdomen since morning.\\nHistory of Present Illness\\n- The patient is an adult presenting with severe stomach pain.\\n- Pain is located near the lower abdomen, starting this morning.\\n- Attended a dinner party at a restaurant last night.\\n- Denies additional gastrointestinal symptoms.\\nReview of Systems\\n- Gastrointestinal: Reports severe lower abdominal pain. Denies any other gastrointestinal symptoms.\\nSocial History\\n- Recent dining at a restaurant with friends.\\nAssessment and Plan\\n1. Acute Abdominal Pain\\n- Suspected relation to recent meal at a restaurant.\\n- Medication prescribed for pain management.\\n- Advised to avoid eating from outside.\\nPatient Recommendations\\n- Take the prescribed medicines regularly.\\n- Avoid eating from outside.\\n- Return to the clinic if the pain worsens or new symptoms develop.", "is_note_completed": false, "note_completed_time": "2025-05-15T03:26:48.372Z", "ehr_context": { "appointment_id": "6600001", "patient_id": "Patient/75909597", "provider_id": "Practitioner/34373111" } } ``` ##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request Bad Request \*\*Error Code:\*\* \`30001\` \
Clinical note feature not enabled for this user. \
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden Forbidden \*\*Error Code:\*\* \`30007\` \
Resource access denied. Contact your administrator. \
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found Not Found \*\*Error Code:\*\* \`30009\` \
Clinical note does not exist. \
### Update a Clinical Note - **Method:** `PATCH` - **Path:** `/clinical_notes/notes/{noteId}` - **Tags:** clinicalnotes Updates a clinical note associated with the `noteId`. **[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `clinical_note:update:admin` **[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `healthcare:update:clinical_notes:admin`,`healthcare:update:clinical_notes:master` **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT` #### Parameters ##### `noteId` required - **In:** `path` The clinical note's unique identifier. `string` #### Request Body ##### Content-Type: application/json - **`is_note_completed` (required)** `boolean` — Indicates whether the clinical note is marked as completed. **Example:** ```json { "is_note_completed": true } ``` #### Responses ##### Status: 204 Status of the update request. ##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request Bad Request \*\*Error Code:\*\* \`30001\` \
Clinical note feature not enabled for this user. \
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden Forbidden \*\*Error Code:\*\* \`30007\` \
Resource access denied. Contact your administrator. \
##### Status: 404 \*\*HTTP Status Code:\*\* \`404\` \
Not Found Not Found \*\*Error Code:\*\* \`30009\` \
Clinical note does not exist. \
##### Status: 500 \*\*HTTP Status Code:\*\* \`500\` \
Internal Server Error Internal Server Error \*\*Error Code:\*\* \`30011\` \
Failed to update note. Try again later. \