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

# Vidu Template List API

> Query the full Vidu effect template catalog through Crun, including template IDs, supported options, preview assets, credits, and input instructions.

## Overview

Use this endpoint to query the available Vidu effect templates exposed by Crun.

This endpoint is designed for developers who want to integrate all Vidu templates with a single API connection. It returns the paginated template catalog, supported options, preview resources, input instructions, official Vidu category metadata, hot/new flags, and credits after Crun-side normalization.

<Tip>
  Developers can use this endpoint as the source of truth for template IDs and per-template capabilities, then pass the selected template configuration directly into <code>vidu/template</code> for one-click integration of all supported templates.
</Tip>

## Use Cases

1. Build a template marketplace or template picker UI
2. Synchronize the latest template list on a scheduled basis
3. Query a single template by passing the optional `template` parameter
4. Drive dynamic form rendering based on returned template metadata
5. Use `page` and `page_size` to paginate large template catalogs

## Official References

* Official Vidu template gallery examples: [Templates](https://platform.vidu.com/docs/templates)
* Official Vidu template generation API: [Template](https://platform.vidu.com/docs/template)

## Related Resources

<CardGroup cols={2}>
  <Card title="Vidu Template Video" icon="sparkles" href="/templates/vidu/template-video-generation">
    Submit a Vidu template video generation task with the selected template and template-specific inputs.
  </Card>

  <Card title="Get Task Info" icon="magnifying-glass" href="/models/common/get-task-info">
    Query generation status and retrieve final results after task submission.
  </Card>
</CardGroup>


## OpenAPI

````yaml templates/vidu-template-list.json get /api/v1/client/job/vidu-templates
openapi: 3.0.0
info:
  title: Crun Vidu Template List API
  description: crun.ai Vidu template list API documentation
  version: 1.0.0
  contact:
    name: Technical Support
    email: support@crun.ai
servers:
  - url: https://api.crun.ai
    description: API Server
security:
  - ApiKeyAuth: []
paths:
  /api/v1/client/job/vidu-templates:
    get:
      summary: Query Vidu template list
      operationId: vidu-template-list
      parameters:
        - name: page
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            default: 1
          description: >-
            Page number for paginated template list queries. Ignored when
            `template` is provided.
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            maximum: 50
            default: 20
          description: >-
            Number of templates per page. The maximum value is 50. Ignored when
            `template` is provided.
        - name: template
          in: query
          required: false
          schema:
            type: string
            default: ''
          description: >-
            Optional template ID. When provided, the API returns only the
            matching template.
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          total:
                            type: integer
                            description: >-
                              Total number of templates. When `template` is
                              provided, this is the number of matched templates.
                            example: 120
                          templates:
                            type: array
                            items:
                              $ref: '#/components/schemas/ViduTemplate'
              example:
                code: 200
                message: success
                data:
                  total: 120
                  templates:
                    - template: Vintage_Moment_of_Mom
                      resolution:
                        - 1080p
                      duration:
                        - 0
                      aspect_ratio:
                        - '9:16'
                      output_type: unspecified
                      name: Vintage Moment of Mom
                      cover: >-
                        https://scene.cf.vidu.studio/media-asset/083048-QXAxiKtJUEYIy8ti.png
                      video: >-
                        https://scene.cf.vidu.studio/media-asset/083048-QXAxiKtJUEYIy8ti.png
                      credits: 9
                      person_count: Only single female person photos are supported
                      input_instruction: >-
                        {"image_count":"Only one image can be
                        uploaded","image_url":["https://scene.cf.vidu.studio/media-asset/083031-h9r9GH4Ll5AYpoF1.png"],"person_count":"Only
                        single female person photos are
                        supported","attention":"Single person half-body or
                        full-body photos yield the best
                        results","prompt_instruction":"No prompt required for
                        this mode","effect_boundary":"There is a low probability
                        of issues such as subtle changes in facial features"}
                      category_name: Festival
                      category_id: 11
                      is_hot: true
                      is_new: false
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          enum:
            - 200
            - 401
            - 402
            - 404
            - 422
            - 429
            - 455
            - 500
            - 501
            - 505
          description: >-
            Response status code


            - **200**: Success - Request has been processed successfully

            - **401**: Unauthorized - Authentication credentials are missing or
            invalid

            - **402**: Insufficient Credits - Account does not have enough
            credits to perform the operation

            - **404**: Not Found - The requested resource or endpoint does not
            exist

            - **422**: Validation Error - The request parameters failed
            validation checks

            - **429**: Rate Limited - Request limit has been exceeded for this
            resource

            - **455**: Service Unavailable - System is currently undergoing
            maintenance

            - **500**: Server Error - An unexpected error occurred while
            processing the request

            - **501**: Generation Failed - Content generation task failed

            - **505**: Feature Disabled - The requested feature is currently
            disabled
        message:
          type: string
          description: Response message, error description when failed
          example: success
    ViduTemplate:
      type: object
      properties:
        template:
          type: string
          description: Vidu Template ID
          example: Vintage_Moment_of_Mom
        resolution:
          type: array
          items:
            type: string
          description: Supported output resolutions
          example:
            - 1080p
        duration:
          type: array
          items:
            type: integer
          description: Supported output durations
          example:
            - 0
        aspect_ratio:
          type: array
          items:
            type: string
          description: Supported aspect ratios
          example:
            - '9:16'
        output_type:
          type: string
          description: Output type returned by Vidu
          example: unspecified
        name:
          type: string
          description: Human-readable template name
          example: Vintage Moment of Mom
        cover:
          type: string
          format: uri
          description: Template cover image
          example: https://scene.cf.vidu.studio/media-asset/083048-QXAxiKtJUEYIy8ti.png
        video:
          type: string
          format: uri
          description: Template preview asset
          example: https://scene.cf.vidu.studio/media-asset/083048-QXAxiKtJUEYIy8ti.png
        credits:
          type: number
          description: Credits consumed by templates on crun
          example: 9
        person_count:
          type: string
          description: People count or subject limitation for the template
          example: Only single female person photos are supported
        input_instruction:
          type: string
          description: >-
            Serialized per-template input instruction returned by the upstream
            service
          example: >-
            {"image_count":"Only one image can be
            uploaded","image_url":["https://scene.cf.vidu.studio/media-asset/083031-h9r9GH4Ll5AYpoF1.png"],"person_count":"Only
            single female person photos are supported","attention":"Single
            person half-body or full-body photos yield the best
            results","prompt_instruction":"No prompt required for this
            mode","effect_boundary":"There is a low probability of issues such
            as subtle changes in facial features"}
        category_name:
          type: string
          description: Template category name
          example: Festival
        category_id:
          type: integer
          description: Official Vidu category ID
          example: 11
        is_hot:
          type: boolean
          description: Whether this template is marked as a hot template by Vidu
          example: true
        is_new:
          type: boolean
          description: Whether this template is marked as a new template by Vidu
          example: false
  responses:
    Error:
      description: Server Error
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        All APIs require authentication via API Key.


        Get API Key:

        1. Visit [API Key Management Page](https://crun.ai/user-api-key) to get
        your API Key


        Usage:

        Add to request header:


        x-api-key: YOUR_API_KEY


        Note:

        - Keep your API Key secure and do not share it with others

        - If you suspect your API Key has been compromised, reset it immediately
        in the management page

````