---
title: "List Document Templates"
method: GET
path: "/api/v2/ml-scribe/open-api/templates/document-templates"
tags: ["Heidi API"]
---

# List Document Templates

`GET /api/v2/ml-scribe/open-api/templates/document-templates`

Get templates for document generation.

If no user provided, specialty_id will be used in demo session.
Both of user and specialty_id can be none: there's no specialty selected in demo.

all users: return all templates (note structure + document).

Returns:
    OpenAPIGetTemplatesResponseV2: templates for document gen

## Query parameters

- `specialty_id` string, nullable

## Response `200`

Successful Response

- OpenAPIGetTemplatesResponseV2
  - `templates` OpenAPITemplateResponseV2[], required
    - `is_private` boolean
    - `team_id` string, nullable
    - `template_author_group` 'Heidi' | 'Community' | 'Team' | 'User'
    - `template_visibility` 'Community' | 'Team' | 'User' | 'Heidi' | 'Organization'
    - `source_template_id` string, nullable
    - `template_gallery_sharing_preference_show_name` boolean
    - `template_gallery_sharing_preference_show_clinic` boolean
    - `template_gallery_sharing_preference_show_profile_picture` boolean
    - `shared_team_ids` string[], nullable — An array of team_ids that the template is shared with
    - `kinde_user_id` string, required
    - `created_time` string, date-time, nullable
    - `updated_time` string, date-time, nullable
    - `deleted_at` string, date-time, nullable
    - `template_gallery_url_path` string, nullable
    - `is_structured_template` boolean
    - `global_last_used` string, date-time, nullable — Last time the template was used by any user (global usage timestamp)
    - `global_usage` integer — Total number of times the template has been used across all users (global usage counter)
    - `last_modified_ia_feedback_loop` string, date-time, nullable
    - `name` string, required
    - `structure_template` string
    - `description` string, nullable
    - `tone_template` string, nullable
    - `template_category` 'CONSULT_NOTE_TEMPLATE' | 'DOCUMENT_TEMPLATE' | 'FORM_TEMPLATE' | 'ASSESSMENT_TEMPLATE' | 'LETTER_TEMPLATE'
    - `template_html` string, nullable
    - `template_json` string, nullable
    - `sectional_note_ehr_provider` 'Epic Systems' | 'Other' | 'Heidi'
    - `form_fields` FormField[], nullable
      - `page` integer, required
      - `field_name` string, required
      - `field_label` string, nullable
      - `field_type` string, nullable
      - `choice_values` string[], nullable
      - `rect` PdfFormFieldRect
        - `x0` number, required
        - `y0` number, required
        - `x1` number, required
        - `y1` number, required
      - `event` string[], nullable
      - `javascript` string[], nullable
      - `max_len` integer, nullable
      - `radio_button_value` string, nullable
    - `s3_object_key` string, nullable
    - `version_control_id` string, nullable
    - `original_v1_structure_template` string, nullable
    - `list_order_priority` integer, nullable
    - `should_deduct_quota` boolean
    - `organization_id` string, nullable — The organization_id the template belongs to
    - `id` string, required
    - `usage` integer
    - `is_favorite` boolean
    - `added_to_favorite_at` string, date-time, nullable
    - `is_pinned` boolean
    - `added_to_pinned_at` string, date-time, nullable
    - `last_used` string, date-time, nullable
    - `is_editable` boolean
    - `is_publishable` boolean
    - `author_name` string
    - `review_status` 'PENDING' | 'APPROVED' | 'REJECTED' | 'UNNECESSARY'

## Other responses

- `400` — Bad Request
- `422` — Validation Error

---

[API](https://skmtc.net/heidihealth/apis/heidi-api-documentation.md) · [All operations](https://skmtc.net/heidihealth/apis/heidi-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/heidihealth/heidi-api-documentation/versions/39b46a9d8637/schema)
