> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vidjutsu.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Assets

> Create, list, update, and delete asset records.

## Create

```typescript theme={null}
const { data } = await vj.createAsset({
  url: "https://cdn.vidjutsu.ai/uploads/...",
  type: "video",
  tags: [{ key: "project", value: "fitness-campaign" }],
});
```

## List all

```typescript theme={null}
const { data } = await vj.listOrGetAssets();

// Filter by type
const { data } = await vj.listOrGetAssets({ type: "video" });
```

## Get by ID

```typescript theme={null}
const { data } = await vj.listOrGetAssets({ id: "asset_..." });
```

## Update

```typescript theme={null}
const { data } = await vj.updateAsset(
  { tags: [{ key: "status", value: "approved" }] },
  { id: "asset_..." },
);
```

## Delete

```typescript theme={null}
const { data } = await vj.deleteAsset({ id: "asset_..." });
```

## Rate limit

Unmetered — asset operations have no daily limit and no per-call charge.
