> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.twelvelabs.io/v1.3/sdk-reference/node-js/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.twelvelabs.io/_mcp/server. # Node.js SDK > Node.js SDK for the TwelveLabs Video Understanding Platform. The [TwelveLabs Node.js SDK](https://github.com/twelvelabs-io/twelvelabs-js) provides a robust interface for interacting with the TwelveLabs Video Understanding Platform. It simplifies authentication and efficiently processes asynchronous tasks. > **Notes** > > * This section provides an overview of the key methods and their usage. However, it is a partial list of all available methods and fields in the SDK. > * The SDK is designed to closely follow the structure of the TwelveLabs API. In most cases, you'll find a corresponding method in the SDK for each method in the API. > * While the API uses snake case for function and parameter names, the Node.js SDK adopts camel case. For example, an API parameter like `video_id` is `videoId` in the Node.js SDK. # Sample applications To get started quickly, see the sample applications below that demonstrate the capabilities of the TwelveLabs Node.js SDK. These applications show how to implement common use cases and the best practices for using the SDK. * [Building a Shade Finder App: Using TwelveLabs' API to Pinpoint Specific Colors in Videos](https://www.twelvelabs.io/blog/shade-finder) > Node.js SDK for the TwelveLabs Video Understanding Platform. ## Docs - [The TwelveLabs class](https://docs.twelvelabs.io/sdk-reference/node-js/the-twelve-labs-class.md): Initialize the Node.js SDK client. - [Assets](https://docs.twelvelabs.io/sdk-reference/node-js/assets.md): Upload, manage, and import assets with the Node.js SDK. - [Upload content](https://docs.twelvelabs.io/sdk-reference/node-js/upload-files.md): Upload videos, images, audio, and documents to create reusable assets. - [Direct uploads](https://docs.twelvelabs.io/sdk-reference/node-js/upload-files/direct-uploads.md): Upload files directly to the platform. Processing is asynchronous; poll the asset status until it is ready. - [Multipart uploads](https://docs.twelvelabs.io/sdk-reference/node-js/upload-files/multipart-uploads.md): Upload local video, audio, and images in chunks for reliable, resumable transfers. - [Manage assets](https://docs.twelvelabs.io/sdk-reference/node-js/manage-assets.md): Retrieve assets, manage user-defined metadata, and retrieve transcriptions. - [Data connectors](https://docs.twelvelabs.io/sdk-reference/node-js/data-connectors.md): Connect external data providers and manage connections with the Node.js SDK. - [Imports](https://docs.twelvelabs.io/sdk-reference/node-js/data-connectors/imports.md): Import files from a connected account with the Node.js SDK. - [Manage entities](https://docs.twelvelabs.io/sdk-reference/node-js/manage-entities.md): Manage entities and entity collections. - [Agents (Research preview)](https://docs.twelvelabs.io/sdk-reference/node-js/agents.md): Agentic orchestration with knowledge stores and persistent memory. - [Knowledge stores](https://docs.twelvelabs.io/sdk-reference/node-js/knowledge-stores.md): Create and manage knowledge stores with the Node.js SDK. - [Search a knowledge store](https://docs.twelvelabs.io/sdk-reference/node-js/search-knowledge-store.md): Search across the items in a knowledge store with the Node.js SDK. - [Knowledge store items](https://docs.twelvelabs.io/sdk-reference/node-js/knowledge-store-items.md): Add items to a knowledge store and organize them into collections with the Node.js SDK. - [Responses](https://docs.twelvelabs.io/sdk-reference/node-js/responses.md): Reason over a knowledge store and generate responses with the Node.js SDK. - [Models and search](https://docs.twelvelabs.io/sdk-reference/node-js/models-and-search.md): Index content, search videos, create embeddings, and analyze videos with the Node.js SDK. - [Manage indexes](https://docs.twelvelabs.io/sdk-reference/node-js/manage-indexes.md): Create and manage indexes for organizing video embeddings and metadata. - [Index content](https://docs.twelvelabs.io/sdk-reference/node-js/index-content.md): Manage the indexed assets within an index. - [Manage videos](https://docs.twelvelabs.io/sdk-reference/node-js/manage-videos.md): This API will be deprecated in a future version. Use the Index content API. - [Video indexing tasks](https://docs.twelvelabs.io/sdk-reference/node-js/video-indexing-tasks.md): This method of uploading videos will be deprecated in a future version. Use direct uploads or multipart uploads followed by separate indexing. - [Search](https://docs.twelvelabs.io/sdk-reference/node-js/search.md): Perform search requests. - [Create embeddings v2](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-2.md): Create vector embeddings for text, images, audio, video, and documents. Enable semantic search and content understanding. - [Create sync embeddings](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-2/create-sync-embeddings.md): Create embeddings synchronously. - [Create async embeddings](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-2/create-async-embeddings.md): Create embeddings asynchronously for audio, video, images, and documents. - [Create embeddings v1](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-1.md): This API will be deprecated in a future version. Migrate to the Embed API v2 for continued support and access to new features. - [Create text, image, and audio embeddings](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-1/create-text-image-and-audio-embeddings.md): Create text, image, and audio embeddings. - [Create video embeddings](https://docs.twelvelabs.io/sdk-reference/node-js/create-embeddings-v-1/create-video-embeddings.md): Create embeddings for your videos. - [Analyze and segment videos](https://docs.twelvelabs.io/sdk-reference/node-js/analyze-videos.md): Analyze videos to generate text and extract structured, timestamped segments. - [Sync analysis](https://docs.twelvelabs.io/sdk-reference/node-js/analyze-videos/sync-analysis.md) - [Async analysis](https://docs.twelvelabs.io/sdk-reference/node-js/analyze-videos/async-analysis.md) - [Batch analysis](https://docs.twelvelabs.io/sdk-reference/node-js/analyze-videos/batch-analysis.md)