> ## Documentation Index > Fetch the complete documentation index at: https://bunny.net/docs/llms.txt > Use this file to discover all available pages before exploring further. # Trigger Smart actions > Queues Smart Actions (title, description, chapters and/or moments generation) for a video that already has captions. This endpoint does not check the video library's Smart Actions setting — requests are accepted, processed and billed for transcription usage even when Smart Actions is disabled for the library. Requires at least one of GenerateTitle, GenerateDescription, GenerateChapters or GenerateMoments, and returns 429 once the library's Smart Actions usage threshold for the video is exceeded. ## OpenAPI ````yaml https://video.bunnycdn.com/openapi/bunnynet-video-api.public.json post /library/{libraryId}/videos/{videoId}/smart openapi: 3.0.0 info: title: Stream API termsOfService: https://bunny.net/tos contact: name: bunny.net url: https://docs.bunny.net email: support@bunny.net version: 1.6.21 servers: - url: https://video.bunnycdn.com security: [] tags: - name: Manage Collections - name: Encoding Statistics - name: Manage Videos paths: /library/{libraryId}/videos/{videoId}/smart: post: tags: - Manage Videos summary: Trigger Smart actions description: >- Queues Smart Actions (title, description, chapters and/or moments generation) for a video that already has captions. This endpoint does not check the video library's Smart Actions setting — requests are accepted, processed and billed for transcription usage even when Smart Actions is disabled for the library. Requires at least one of GenerateTitle, GenerateDescription, GenerateChapters or GenerateMoments, and returns 429 once the library's Smart Actions usage threshold for the video is exceeded. operationId: Video_SmartGenerate parameters: - name: libraryId in: path required: true description: The ID of the video library. schema: type: integer format: int64 x-position: 1 - name: videoId in: path required: true description: The GUID of the video. schema: type: string x-position: 2 requestBody: x-name: model content: application/json: schema: $ref: '#/components/schemas/SmartGenerateModel' required: true x-position: 3 responses: '202': description: The smart action was queued content: application/json: schema: $ref: '#/components/schemas/StatusModel' '400': description: Invalid request for smart feature content: application/json: schema: $ref: '#/components/schemas/StatusModel' '401': description: The request authentication failed content: application/json: schema: $ref: '#/components/schemas/StatusModel' '403': description: The request authorization failed content: application/json: schema: $ref: '#/components/schemas/StatusModel' '404': description: The requested video was not found content: application/json: schema: $ref: '#/components/schemas/StatusModel' '429': description: Limit exceeded content: application/json: schema: $ref: '#/components/schemas/StatusModel' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/StatusModel' '503': description: >- The smart action could not be queued; the requested features are marked as failed and the request can be retried content: application/json: schema: $ref: '#/components/schemas/StatusModel' security: - AccessKey: [] components: schemas: SmartGenerateModel: type: object additionalProperties: false properties: generateTitle: type: boolean description: Whether video title should be generated. nullable: true generateDescription: type: boolean description: Whether video description should be generated. nullable: true generateChapters: type: boolean description: Whether video chapters should be generated. nullable: true generateMoments: type: boolean description: Whether video moments should be generated. nullable: true sourceLanguage: type: string description: (Optional) Video source language, use ISO 639-1 language code. nullable: true StatusModel: type: object additionalProperties: false properties: success: type: boolean description: Determines if the request was successful message: type: string description: >- Human-readable message describing the result, typically populated with error details when Success is false. nullable: true statusCode: type: integer description: The HTTP status code corresponding to the result of the request. format: int32 securitySchemes: AccessKey: type: apiKey description: AccessKey based authentication name: AccessKey in: header ```` This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.