> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.twelvelabs.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.twelvelabs.io/_mcp/server.

# The knowledge store object

> Knowledge store object schema.

A knowledge store contains your videos plus the understanding the platform derives from them: spatiotemporal context, a typed ontology, and embeddings for semantic retrieval. It is the corpus agents reason over — the full video collection, not just individual clips.

The object is composed of the following fields:

* `_id`: A string representing the unique identifier of the knowledge store.
* `name`: A string representing the name of the knowledge store.
* `description`: A string representing the description of the knowledge store.
* `ingestion_config`: An object that controls how content added to the knowledge store is processed. You can shape extraction either with a JSON Schema for precise structured fields, or with a natural-language description. Immutable after creation. For the full structure, see the [`ingestion_config`](/v1.3/api-reference/knowledge-stores/create#request.body.ingestion_config) parameter on the **Create a knowledge store** page.
* `item_count`: An integer representing the number of items in the knowledge store.
* `metadata`: An object containing custom metadata for the knowledge store. Keys are strings; each value is a string, a number, a boolean, or an array of strings.
* `created_at`: A string representing the date and time, in the RFC 3339 format, when the knowledge store was created.
* `updated_at`: A string representing the date and time, in the RFC 3339 format, when the knowledge store was last updated.

## Examples

Each example shows a populated knowledge store. The first uses a JSON Schema to define the metadata to extract from each video; the second uses a natural-language description instead.

#### JSON Schema

```json
{
  "_id": "ks_069e9869-1ea3-7481-8000-dae72bf6be6e",
  "name": "Product Demo Analysis",
  "description": "Knowledge store for product demo videos",
  "ingestion_config": {
    "enrichment_config": {
      "type": "json_schema",
      "json_schema": {
        "type": "object",
        "properties": {
          "topic": {
            "type": "string",
            "description": "The main topic discussed in this shot"
          },
          "sentiment": {
            "type": "string",
            "enum": ["positive", "negative", "neutral"],
            "description": "The overall sentiment of the shot"
          }
        },
        "required": ["topic"]
      }
    }
  },
  "item_count": 5,
  "metadata": {},
  "created_at": "2024-08-16T16:53:59Z",
  "updated_at": "2024-08-16T16:55:59Z"
}
```

#### Natural language

```json
{
  "_id": "ks_069e9869-1ea3-7481-8000-dae72bf6be6e",
  "name": "Product Demo Analysis",
  "description": "Knowledge store for product demo videos",
  "ingestion_config": {
    "enrichment_config": {
      "type": "description",
      "description": "Analyze product demos to identify key features, user interactions, and presentation techniques"
    }
  },
  "item_count": 5,
  "metadata": {},
  "created_at": "2024-08-16T16:53:59Z",
  "updated_at": "2024-08-16T16:55:59Z"
}
```