> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.twelvelabs.io/v1.3/api-reference/error-codes/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.twelvelabs.io/_mcp/server. # Error codes > Common API error codes and their meanings. Troubleshoot authentication, rate limit, and validation errors. This page lists the most common error messages you may encounter while using the platform. # General * `parameter_invalid` * The `{parameter}` parameter is invalid. * The following parameters are invalid: `{parameters}`. * The request contains some invalid parameters. * `parameter_not_provided` * The `{parameter}` parameter is required but was not provided. * The following required parameters were not provided: `{parameters}`. * Some required parameters are not provided. * `parameter_unknown` * The `{parameter}` parameter is unknown. * The following parameters are unknown: `{parameters}`. * The request contains some unknown parameters. * `resource_not_exist` * Resource with id `{resource_id}` does not exist in `{collection_name}`. * `api_key_invalid` * API Key is either invalid or expired. Please check your API key or generate a new one from the dashboard and try again. * `api_allowed_for_paid_plan` * API is allowed for paid plan only. Please upgrade to a paid plan to continue using the API. * `api_not_allowed` * API is not allowed to use. * `unauthorized` * Authentication failed. Please check your credentials and try again. * `region_not_allowed` * Twelve Labs API is not available in your region. Please refer to [https://twelvelabs.io/terms-of-use](https://twelvelabs.io/terms-of-use) * `request_canceled_or_timed_out` * Request canceled. * `too_many_requests` * You have exceeded the rate limit (`{rate_limit}`). Please try again later after `{retry_after}`. * `tags_not_allowed` * Tag `{tag}` is not allowed to use. Please remove it from the request. * The following tags are not allowed to be used: `{tags}`. Please remove these from the request. * `api_upgrade_required` * This endpoint is supported starting with version `{version}`. Your version is `{current_version}`. # The `/analyze` endpoint * `token_limit_exceeded` * The request exceeds the [context window](/v1.3/docs/concepts/models/pegasus#context-window) and cannot be processed. Reduce the prompt length, use a shorter video, or lower the `max_tokens` value. * `Live video streams are not supported. Please provide a URL that is not a live stream.` * The URL points to a live HLS stream. Only VOD manifests are supported. Provide the URL of a VOD manifest. * `output truncated: the generation reached the configured max_tokens. The partial output is returned; raise max_tokens if you need a longer response.` * The response reached the maximum response length in `general` mode. The platform returns the partial output and sets `finish_reason` to `"length"`. This message appears in the `error.message` field. * `output truncated: combined input and output tokens reached the model's context limit. The partial output is returned; consider reducing input size (shorter prompt, smaller video clip, fewer media bindings) or lowering max_tokens.` * The request reached the [context window](/v1.3/docs/concepts/models/pegasus#context-window) in `general` mode. The platform returns the partial output and sets `finish_reason` to `"length"`. This message appears in the `error.message` field. * `analysis failed: the time_based_metadata output reached the configured max_tokens before a complete result was produced. Raise max_tokens if it is below the per-model maximum; otherwise narrow the request (fewer segment_definitions or fields, a larger min_segment_duration, or a shorter analysis window).` * The response reached the maximum response length in `time_based_metadata` mode. The task fails with `status` set to `"failed"`, and no partial output is returned. This message appears in the `error.message` field. * `analysis failed: the time_based_metadata output reached the model's context limit (combined input and output tokens) before a complete result was produced. Narrow the request (fewer segment_definitions or fields, a larger min_segment_duration, a shorter analysis window, fewer media bindings) or lower max_tokens to leave more room for the input.` * The request reached the [context window](/v1.3/docs/concepts/models/pegasus#context-window) in `time_based_metadata` mode. The task fails with `status` set to `"failed"`, and no partial output is returned. This message appears in the `error.message` field. * `user_canceled` * An async analysis task was canceled through the task cancellation endpoint. The task has `status` set to `"canceled"`, and no result is returned. * `batch_canceled` * A queued analysis task was canceled because its batch was canceled. The task has `status` set to `"canceled"`, and no result is returned. * `batch_expired` * A queued analysis task was canceled because its batch expired. The task has `status` set to `"canceled"`, and no result is returned. * `batch_processing_timeout` * A processing analysis task failed after reaching its batch's processing deadline. The task has `status` set to `"failed"`, and no result is returned. * `index_not_supported_for_generate` * You can only summarize videos uploaded to an index with an engine from the Pegasus family enabled. # The `/analyze/tasks/{task_id}/cancel` endpoint * `task_owned_by_batch` * The task was created as part of a batch. Use the [`POST`](/v1.3/api-reference/analyze-videos/batch-analysis/cancel-batch) method of the `/analyze/batches/{batch_id}/cancel` endpoint instead. * `task_completed` * The task has completed. * `task_failed` * The task has failed. # The `/assets` endpoint * `content_type_invalid` * The content type `{content_type}` is not supported. Please use `multipart/form-data`. * `multipart_boundary_missing` * Multipart boundary is missing. Please provide the boundary in the `Content-Type` header. * `invalid_multipart` * Invalid multipart form. Please check your implementation and try again. * echo bind error * (Returns the raw bind error message) * echo validate error * (Returns a validator-generated message, for example: `Key: 'CreateAssetRequest.Method' Error:Field validation for 'Method' failed on the 'oneof' tag`) * `parameter_not_provided` * The `file` parameter is required but was not provided. `file` is required when `method` is `direct`. * The `url` parameter is required but was not provided. `url` is required when `method` is `url`. * `parameter_invalid` * The `method` parameter is invalid. To upload in parts, use the `/assets/multipart-uploads` endpoint. * The `file` parameter is invalid. Unable to process the uploaded file. Please try uploading again. * The `file` parameter is invalid. Unsupported asset type: `{asset_type}`. * The `image` parameter is invalid. Image dimensions `{current_dimensions}` are below the minimum `{minimum_dimensions}`. * The `image` parameter is invalid. Invalid image file. Please check the format and dimensions. * `media_url_unsupported_format` * The file at the provided URL is not a supported media format. Detected format: `{detected_format}`. Please provide a valid asset file. * `media_url_not_accessible` * Cannot access the media URL `{url}`. The server responded with an error. Please verify the URL is correct and publicly accessible. * `media_url_file_broken` * Cannot read the media file at the specified URL. Please verify the file is valid and try again. * `media_filesize_too_large` * The media file is too large. Please upload a file smaller than `{maximum_size}`. The current size is `{current_size}`. * `video_file_broken` * Unable to process video file. Please check if the file is valid and try again. * `video_file_live` * Live video streams are not supported. Please provide a URL that is not a live stream. * `video_resolution_too_low` * The resolution of the video is too low. Please upload a video with a resolution between `{minimum_resolution}` and `{maximum_resolution}`. Current resolution is `{current_resolution}`. * `video_resolution_too_high` * The resolution of the video is too high. Please upload a video with a resolution between `{minimum_resolution}` and `{maximum_resolution}`. Current resolution is `{current_resolution}`. * `video_resolution_invalid_aspect_ratio` * The aspect ratio of the video is invalid. Please upload a video with an aspect ratio between 1:1 and `{maximum_aspect_ratio}`. Current resolution is `{current_resolution}`. * `video_duration_too_short` * The video is too short. Please use a video with a duration of at least `{minimum_duration}` seconds. Current duration is `{current_duration}` seconds. * `video_duration_too_long` * The video is too long. Please use a video with a duration between `{minimum_duration}` and `{maximum_duration}` seconds. Current duration is `{current_duration}` seconds. * `video_filesize_too_large` * The video is too large. Please use a video with a size less than `{maximum_size}`. The current size is `{current_size}`. * `audio_file_broken` * Unable to process audio file. Please check if the file is valid and try again. * `audio_duration_too_short` * The audio is too short. Please use an audio file with a duration of at least `{minimum_duration}` seconds. Current duration is `{current_duration}` seconds. * `audio_duration_too_long` * The audio is too long. Please use an audio file with a duration between `{minimum_duration}` and `{maximum_duration}` seconds. Current duration is `{current_duration}` seconds. * `audio_filesize_too_large` * The audio is too large. Please use an audio file with a size less than `{maximum_size}`. The current size is `{current_size}`. * `audio_format_unsupported` * The audio format `{format}` is not supported. Please use one of the following formats: `{supported_formats}`. * `asset_transcription_not_found` * Transcription for asset `{asset_id}` does not exist. * `resource_not_exists` * The requested asset with the identifier `{asset_id}` does not exist. # The `/embed` endpoint * `parameter_invalid` * The `text` parameter is invalid. The text token length should be less than or equal to 77. * The `text_truncate` parameter is invalid. You should use one of the following values: `none`, `start`, `end`. # The `/embed/tasks` endpoint * `parameter_invalid` * The `video_clip_length` parameter is invalid. `video_clip_length` should be within 2-10 seconds long * The `video_end_offset_sec` parameter is invalid. `video_end_offset_sec` should be greater than `video_start_offset_sec` # The `/embed/tasks/{task-id}/status` endpoint * `parameter_invalid` * The `task_id` parameter is invalid. `task_id` value is invalid # The `/indexes` endpoint * `index_option_cannot_be_changed` * Index option cannot be changed. Please remove index\_options parameter and try again. If you want to change index option, please create new index. * `index_engine_cannot_be_changed` * Index engine cannot be changed. Please remove engine\_id parameter and try again. If you want to change engine, please create new index. * `index_name_already_exists` * Index name `{index_name}` already exists. Please use another unique name and try again. # The `/search` endpoint * `search_option_not_supported` * Search option `{search_option}` is not supported for index `{index_id}`. Please use one of the following search options: `{supported_search_option}`. * `search_option_combination_not_supported` * Search option `{search_option}` is not supported with `{other_combination}`. * `search_filter_invalid` * Filter used in search is invalid. Please use the valid filter syntax by following filtering documentation. * `search_page_token_expired` * The token that identifies the page to be retrieved is expired or invalid. You must make a new search request. Token: `{next_page_token}`. * `index_not_supported_for_search`: * You can only perform search requests on indexes with an engine from the Marengo family enabled. # The `/summarize` endpoint * `token_limit_exceeded` * The request exceeds the [context window](/v1.3/docs/concepts/models/pegasus#context-window) and cannot be processed. Reduce the prompt length, use a shorter video, or lower the `max_tokens` value. # The `/tasks` endpoint * `video_resolution_too_low` * The resolution of the video is too low. Please upload a video with resolution between 360x360 and 5184x2160. Current resolution is `{current_resolution}`. * `video_resolution_too_high` * The resolution of the video is too high. Please upload a video with resolution between 360x360 and 5184x2160. Current resolution is `{current_resolution}`. * `video_resolution_invalid_aspect_ratio` * The aspect ratio of the video is invalid. Please upload a video with aspect ratio between 1:1 and 2.4:1. Current resolution is `{current_resolution}`. * `video_file_broken` * Cannot read video file. Please check the video file is valid and try again. * `task_cannot_be_deleted` * (Returns raw error message) * `usage_limit_exceeded` * Not enough free credit. Please register a payment method or contact [sales@twelvelabs.io](mailto:sales@twelvelabs.io). * `video_filesize_too_large` * The video is too large. Please use a video with a size less than `{maximum_size}`. The current size is `{current_file_size}`. * `video_duration_too_short` * The video is too short. Please use a video with duration at least \{minimum\_duration} seconds. Current duration is \{current\_duration} seconds. * `video_duration_too_long` * The video is too long. Please use a video with duration at most \{maximum\_duration} seconds. Current duration is \{current\_duration} seconds. Note that the minimum and maximum durations depend on the models enabled for your index. For details, see the input requirements of each model on the [Marengo](/v1.3/docs/concepts/models/marengo) and [Pegasus](/v1.3/docs/concepts/models/pegasus#video-file-requirements) pages. If both models are enabled, the most restrictive requirements apply. # The `/connections` endpoints The following codes apply to the `/connections` endpoints. * `connection_not_found` * The specified connection does not exist. * `connection_not_active` * The connection is not active. Reconnect the account and try again. * `import_not_found` * The specified import does not exist. * `redirect_uri_invalid` * The redirect URI failed validation. It must use HTTPS, resolve to a public host, contain no wildcards, and stay within the length limit. * `redirect_uri_already_exists` * The redirect URI is already registered on your account. * `redirect_uri_not_found` * The specified redirect URI does not exist. * `redirect_uri_limit_exceeded` * Your account has reached the maximum number of registered redirect URIs. The following codes appear in the `error` object of an individual item in the import details. They are not returned as an HTTP response status. * `source_unavailable` * The file could not be accessed at the provider. It may have been moved or deleted, or its permissions may have changed. * `source_not_authorized` * The app is not authorized to access this file. Select it through the connector's file picker, then retry the import. * `unsupported_media_type` * The file is not a supported media type and cannot be imported. * `video_filesize_too_large` * The video file at the provider exceeds the maximum ingestible size of 10GB. * `audio_filesize_too_large` * The audio file at the provider exceeds the maximum ingestible size of 4GB. * `media_filesize_too_large` * The image file at the provider exceeds the maximum ingestible size of 32MB. > Common API error codes and their meanings. Troubleshoot authentication, rate limit, and validation errors.