---
canonical_url: "https://docs.composio.dev/toolkits/video_db"
markdown_url: "https://docs.composio.dev/toolkits/video_db.md"
product: "platform"
version: null
last_updated: null
---

# VideoDB

VideoDB is a video infrastructure platform for storing, searching, understanding, editing, and generating video, audio, and image content.

- **Category:** video & audio
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 11
- **Triggers:** 0
- **Slug:** `VIDEO_DB`
- **Version:** 00000000_00

## Tools

### Ask Collection

**Slug:** `VIDEO_DB_ASK_COLLECTION`

Queue a grounded question-answer request over a VideoDB collection's Search V2 indexes. This search-family call is metered and requires Search V2 indexes. The returned status only confirms the async request state, not a successful answer. Pass response_id to GET_ASYNC_RESULT and inspect the terminal result.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `mode` | string | No | Optional provider-supported answer mode; omit to use the provider default. |
| `top_k` | integer | No | Maximum supporting matches to consider (1-100). Defaults to 15. |
| `question` | string | Yes | Question to answer from indexed media. |
| `collection_id` | string | Yes | Collection whose indexed media should ground the answer. |
| `include_sources` | boolean | No | Whether the eventual answer should include supporting source shots. Defaults to false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Collection

**Slug:** `VIDEO_DB_CREATE_COLLECTION`

Create a VideoDB collection for organizing and searching media. Collections are private by default.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable collection name. |
| `is_public` | boolean | No | Whether the collection should be public. Defaults to false for safety. |
| `description` | string | No | Optional purpose or contents of the collection. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Async Result

**Slug:** `VIDEO_DB_GET_ASYNC_RESULT`

Check one VideoDB async operation by response ID. Returns its current state or terminal provider result without polling repeatedly, and fails when a completed nested provider response reports success:false.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `response_id` | string | Yes | Response ID returned by INGEST_MEDIA or ASK_COLLECTION. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Collection

**Slug:** `VIDEO_DB_GET_COLLECTION`

Get metadata for one VideoDB collection by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_id` | string | Yes | Collection ID returned by LIST_COLLECTIONS or CREATE_COLLECTION. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Media

**Slug:** `VIDEO_DB_GET_MEDIA`

Get metadata for one VideoDB video, audio file, or image.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `media_id` | string | Yes | Video, audio, or image ID returned by ingestion or LIST_MEDIA. |
| `media_type` | string ("video" | "audio" | "image") | Yes | Kind of media to retrieve: video, audio, or image. |
| `collection_id` | string | No | Collection ID when known; used as optional access context for the provider read endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Ingest Media

**Slug:** `VIDEO_DB_INGEST_MEDIA`

Queue ingestion of a video, audio file, or image from an HTTP(S) URL into a VideoDB collection. This non-idempotent call is metered; live billing reported file_upload at 0.09 credits. Queue acceptance is not completion. Pass the returned response_id to GET_ASYNC_RESULT, and verify the prior job before retrying after an ambiguous failure to avoid duplicate charges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Publicly reachable HTTP(S) URL of the media to ingest. |
| `name` | string | No | Optional display name for the ingested media. |
| `media_type` | string ("video" | "audio" | "image") | Yes | Kind of media at the URL. Sent as video, audio, or image. |
| `callback_url` | string | No | Optional HTTP(S) callback URL for provider completion notifications. |
| `collection_id` | string | Yes | Destination collection ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Collections

**Slug:** `VIDEO_DB_LIST_COLLECTIONS`

List collections available to the connected VideoDB API key and identify the default collection.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Media

**Slug:** `VIDEO_DB_LIST_MEDIA`

List videos, audio files, or images in one VideoDB collection using one normalized media interface. Video results return at most one page and may include an opaque continuation cursor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum videos in this page (1-100). Ignored for audio and images, whose list endpoints are unpaginated. |
| `media_type` | string ("video" | "audio" | "image") | Yes | Media family to list: video, audio, or image. |
| `next_cursor` | string | No | Opaque continuation returned by a previous video listing. Omit on the first call; audio and image listings do not use it. |
| `collection_id` | string | Yes | Collection whose media should be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rename Media

**Slug:** `VIDEO_DB_RENAME_MEDIA`

Rename one VideoDB video, audio file, or image.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | New media name. |
| `media_id` | string | Yes | Video, audio, or image ID. |
| `media_type` | string ("video" | "audio" | "image") | Yes | Kind of media to rename: video, audio, or image. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Collection

**Slug:** `VIDEO_DB_SEARCH_COLLECTION`

Run synchronous semantic search over indexed media in a VideoDB collection. This metered call consumed 0.0015 credits per successful call during live Free_v1 probing, including calls that returned empty fallback results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | Natural-language semantic search query. |
| `top_k` | integer | No | Maximum nearest matches to return (1-100). |
| `filter` | string | No | Optional structured filter over fields or vector metadata supported by the selected indexes, supplied as a JSON object or array. Omit unless you know the selected index's filterable metadata schema. |
| `index_ids` | array | No | Optional index IDs to search. |
| `index_names` | array | No | Optional index names to search. |
| `collection_id` | string | Yes | Collection to search. |
| `return_fields` | array | No | Optional index names to hydrate under each result's metadata.indexes object, such as ['scene']. |
| `score_threshold` | number | No | Optional minimum similarity score. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Collection

**Slug:** `VIDEO_DB_UPDATE_COLLECTION`

Update the name, description, or visibility of an existing VideoDB collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | New collection name. |
| `is_public` | boolean | No | New public visibility setting. |
| `description` | string | No | New collection description. |
| `collection_id` | string | Yes | Collection ID to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
