# cast

> Reference for the cast tool of Author: the cast, with every action and the arguments you can pass.

Source: https://author.geenius.io/docs/reference/cast/

The cast: Geenius OS profiles linked to the book as references. The profile stays in the OS; Author reads a synced snapshot.

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

## Actions

| Action | What it does |
|---|---|
| `list` | The book's cast: linked Geenius OS profiles. Rules: book_id. |
| `link` | Link a Geenius OS profile to the book's cast. Rules: book_id, profile_id, role? (protagonist\|antagonist\|supporting\|minor\|narrator\|setting\|object\|weather\|organisation), note?. |
| `unlink` | Unlink a profile from the cast. Rules: cast_id, or book_id + profile_id. |

## Arguments we have checked

### cast · list

The book's cast: linked Geenius OS profiles. Rules: book_id.

- `book_id` (required)

### cast · link

Link a Geenius OS profile to the book's cast. Rules: book_id, profile_id, role? (protagonist|antagonist|supporting|minor|narrator|setting|object|weather|organisation), note?.

- `book_id` (required)
- `note`
- `profile_id` (required)
- `role`

### cast · unlink

Unlink a profile from the cast. Rules: cast_id, or book_id + profile_id.

- `book_id`
- `cast_id`
- `profile_id`

> [!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.

