---
title: "Get Template"
method: GET
path: "/v1/flows/templates/{template_id}"
tags: ["Flows", "Templates"]
---

# Get Template

`GET /v1/flows/templates/{template_id}`

Retrieve one flows template, together with each runnable version's inputs and outputs. `versions` is empty when no published version is runnable through this API. Works for any template you can open, including templates shared with you by link or published to Explore from another workspace, which `GET /v1/flows/templates` does not list.

## Path parameters

- `template_id` string, required — The ID of the template, as shown in the ElevenLabs app or by `GET /v1/flows/templates`.

## Query parameters

- `versions_per_template` integer — How many of each template's published versions to return, newest first. `has_more_versions` tells you when a template has more.

## Headers

- `xi-api-key` string, nullable — Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website.

## Response `200`

Successful Response

- TemplateSummary — A template the caller can run, and its runnable versions.
  - `id` string, required — Pass as `template_id` on `POST /v1/flows/templates/{template_id}/runs`.
  - `name` string, required — The template's name.
  - `description` string, nullable — The template's description, if it has one.
  - `versions` TemplateVersion[], required — The published versions this caller can run, newest first. A version whose graph uses a model that is not available to you through the API is left out, as is one whose stored snapshot is gone; either way the list can be empty while the template still has versions the ElevenLabs app can run.
    - `version_id` string, required — Pass as `version_id` on `POST /v1/flows/templates/{template_id}/runs` to pin a run to this snapshot.
    - `published_at_unix` integer, required — When this version was published, as a Unix timestamp in seconds.
    - `is_latest` boolean, required — Whether this is the version a run gets when `version_id` is omitted or set to `latest`.
    - `inputs` TemplatePort[], required — The inputs this version accepts, in canvas order. Every input is required on a run.
      - `id` string, required — The port id. Input ids are the keys of the `inputs` map on `POST /v1/flows/templates/{template_id}/runs`; output ids are the keys of the `outputs` map on the run response.
      - `content_schema` union, required
        - StringSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'string'
          - `enum` string[], nullable
        - NumberSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'number'
          - `enum` number[], nullable
        - IntegerSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'integer'
        - BooleanSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'boolean'
        - ImageSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'image'
        - VideoSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'video'
        - AudioSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'audio'
        - VoiceSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'voice'
        - ObjectSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'object'
          - `properties` object
          - `required` string[]
        - ArraySchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'array'
          - `items` ContentSchema, required — recursive
    - `outputs` TemplatePort[], required — The outputs this version produces, in canvas order.
      - `id` string, required — The port id. Input ids are the keys of the `inputs` map on `POST /v1/flows/templates/{template_id}/runs`; output ids are the keys of the `outputs` map on the run response.
      - `content_schema` union, required
        - StringSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'string'
          - `enum` string[], nullable
        - NumberSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'number'
          - `enum` number[], nullable
        - IntegerSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'integer'
        - BooleanSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'boolean'
        - ImageSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'image'
        - VideoSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'video'
        - AudioSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'audio'
        - VoiceSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'voice'
        - ObjectSchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'object'
          - `properties` object
          - `required` string[]
        - ArraySchema
          - `title` string, nullable
          - `description` string, nullable
          - `type` 'array'
          - `items` ContentSchema, required — recursive
  - `has_more_versions` boolean, required — Whether this template has further published versions beyond the `versions_per_template` returned here. Fetch `GET /v1/flows/templates/{template_id}` with a larger `versions_per_template` to see more of them.

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-22** `6fb9be1a19f5` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/changes/v1/flows/templates/:template_id/get.md)

---

[API](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation.md) · [All operations](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/llms.txt) · [OpenAPI document](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/revisions/48a38e3b0dbd?raw)
