# asset

> Reference for the asset tool of Video: pictures, with every action and what it does.

Source: https://video.geenius.io/docs/reference/asset/

The workspace's pictures as storage references, plus the Geenius OS Media library for people signed in with Geenius OS.

Call it as `geenius_video(tool: "asset", action: "<action>", args: {...})` through Geenius OS.

## Actions

| Action | What it does |
|---|---|
| `list` | This workspace's pictures: ref (storage:<id>, paste it into a spec's src), url, alt, title, size, usedByVideos. query searches alt text and titles. |
| `upload` | Stores a picture from a small data:image/... URL and returns its ref. |
| `import_url` | Fetches ONE picture from a public https address into the workspace and returns its ref (a spec itself never holds a web address). Read a Geenius OS Media item's url with geenius_os media read, then import it here. |
| `update` | Describes a picture: alt text and title. |
| `library` | The Geenius OS Media library's pictures — for a person who signed in to Video with Geenius OS (not agents). |
| `import` | Brings one Geenius OS Media picture in, its title as alt text — for a person who signed in to Video with Geenius OS (not agents). |

> [!TIP]
> Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current.

> [!NOTE]
> Picture references look like `storage:<id>`. A data URL counts against the 900 KB limit of a video spec, so upload large pictures with `asset` instead.

