> ## Documentation Index
> Fetch the complete documentation index at: https://docs.freeplay.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List prompt template versions

> 
Retrieve all versions of a prompt template. Use to view version history or compare changes over time.

`page_size` defaults to 30, maximum 100.



## OpenAPI

````yaml https://app.freeplay.ai/openapi.json get /api/v2/projects/{project_id}/prompt-templates/id/{template_id}/versions
openapi: 3.1.0
info:
  title: Freeplay API
  version: 0.1.0
servers: []
security:
  - BearerAuth: []
paths:
  /api/v2/projects/{project_id}/prompt-templates/id/{template_id}/versions:
    get:
      tags:
        - Prompt Templates
      summary: List prompt template versions
      description: >-

        Retrieve all versions of a prompt template. Use to view version history
        or compare changes over time.


        `page_size` defaults to 30, maximum 100.
      operationId: get_list_prompt_template_versions
      parameters:
        - name: project_id
          in: path
          required: true
          schema:
            type: string
        - name: template_id
          in: path
          required: true
          schema:
            type: string
        - name: page
          in: query
          schema:
            default: 1
            title: Page
            type: integer
        - name: page_size
          in: query
          schema:
            default: 30
            title: Page Size
            type: integer
        - name: from_version
          in: query
          schema:
            default: null
            title: From Version
            type:
              - string
              - 'null'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/PlainPromptTemplate'
                    title: Data
                    type: array
                  pagination:
                    $ref: '#/components/schemas/PaginationInfo'
                required:
                  - data
                  - pagination
                title: PromptTemplateVersionListResponse
                type: object
          description: >-
            PromptTemplateVersionListResponse(data:
            list[server.api_routes.prompt_templates_api_v2.PlainPromptTemplate],
            pagination: server.api_routes.api_v2_common.PaginationInfo)
components:
  schemas:
    PlainPromptTemplate:
      properties:
        prompt_template_id:
          format: uuid
          title: Prompt Template Id
          type: string
        prompt_template_version_id:
          format: uuid
          title: Prompt Template Version Id
          type: string
        prompt_template_name:
          title: Prompt Template Name
          type: string
        version_name:
          title: Version Name
          type:
            - string
            - 'null'
        version_description:
          title: Version Description
          type:
            - string
            - 'null'
        metadata:
          $ref: '#/components/schemas/PromptTemplateMetadata'
        format_version:
          title: Format Version
          type: integer
        project_id:
          format: uuid
          title: Project Id
          type: string
        content:
          items:
            anyOf:
              - $ref: '#/components/schemas/ChatMessageWithMediaSlot'
              - $ref: '#/components/schemas/ChatMessage'
              - $ref: '#/components/schemas/HistoryPlaceholder'
          title: Content
          type: array
        tool_schema:
          title: Tool Schema
          items:
            $ref: '#/components/schemas/NormalizedToolSchema'
          type:
            - array
            - 'null'
        output_schema:
          title: Output Schema
          additionalProperties: true
          type:
            - object
            - 'null'
      required:
        - prompt_template_id
        - prompt_template_version_id
        - prompt_template_name
        - version_name
        - version_description
        - metadata
        - format_version
        - project_id
        - content
        - tool_schema
        - output_schema
      title: PlainPromptTemplate
      type: object
    PaginationInfo:
      properties:
        page:
          title: Page
          type: integer
        page_size:
          title: Page Size
          type: integer
        has_next:
          title: Has Next
          type: boolean
      required:
        - page
        - page_size
        - has_next
      title: PaginationInfo
      type: object
    PromptTemplateMetadata:
      properties:
        provider:
          title: Provider
          type:
            - string
            - 'null'
        flavor:
          title: Flavor
          type:
            - string
            - 'null'
        model:
          title: Model
          type:
            - string
            - 'null'
        params:
          title: Params
          additionalProperties: true
          type:
            - object
            - 'null'
        provider_info:
          title: Provider Info
          additionalProperties: true
          type:
            - object
            - 'null'
      required:
        - provider
        - flavor
        - model
        - params
        - provider_info
      title: PromptTemplateMetadata
      type: object
    ChatMessageWithMediaSlot:
      properties:
        role:
          title: Role
          type: string
        content:
          title: Content
          type: string
        media_slots:
          items:
            $ref: '#/components/schemas/MediaSlot'
          title: Media Slots
          type: array
      required:
        - role
        - content
      title: ChatMessageWithMediaSlot
      type: object
    ChatMessage:
      properties:
        role:
          title: Role
          type: string
        content:
          title: Content
          type: string
      required:
        - role
        - content
      title: ChatMessage
      type: object
    HistoryPlaceholder:
      properties:
        kind:
          const: history
          default: history
          title: Kind
          type: string
      title: HistoryPlaceholder
      type: object
    NormalizedToolSchema:
      properties:
        name:
          title: Name
          type: string
        description:
          title: Description
          type: string
        parameters:
          additionalProperties: true
          title: Parameters
          type: object
      required:
        - name
        - description
        - parameters
      title: NormalizedToolSchema
      type: object
    MediaSlot:
      additionalProperties: false
      properties:
        type:
          enum:
            - audio
            - video
            - image
            - file
          title: Type
          type: string
        placeholder_name:
          title: Placeholder Name
          type: string
      required:
        - type
        - placeholder_name
      title: MediaSlot
      type: object
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````