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

# Storyblok

> Connect Storyblok to your Atako agents — 8 read and 3 write actions.

Let your agents read and write the content of one Storyblok space — browse stories, components (blocks), assets, tags and releases, then create, update and publish stories.

## Connection

* **Authentication**: API key (Personal access token).
* **Required settings**:
  * **Region** — API host of your space's region: mapi (Europe), api-us (United States), api-ca (Canada), api-ap (Australia).
  * **Space ID** — Storyblok → Settings → Space → Space ID (digits only).

<Note>
  Sign in at app.storyblok.com → My account → Account settings → Personal access tokens → + Generate New Token. Name it, set an expiration date, and under space access prefer "Only selected spaces" with the space your agents work on ("All spaces" reaches every space you own). Copy the token. The Space ID is in the space's Settings → Space tab.

  See [Storyblok's documentation](https://www.storyblok.com/docs/concepts/access-tokens).
</Note>

## Read actions (8)

| Action            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `get_component`   | Retrieve one component by id, with its full field schema (field names, types, required, options).                                                                                                                                                                                                                                                                                                                                                                                                  |
| `get_space`       | Retrieve the connected space (name, plan, default languages, domain) — a cheap way to check the connection works.                                                                                                                                                                                                                                                                                                                                                                                  |
| `get_story`       | Retrieve one story by id with its full content (the block tree whose root has a "component" field) — read it before update\_story.                                                                                                                                                                                                                                                                                                                                                                 |
| `list_assets`     | List assets (media) of the space. Optional: search (file name), in\_folder (asset folder id), with\_tags (comma-separated), is\_private (boolean), sort\_by (created\_at:asc\|desc, updated\_at:asc\|desc, short\_filename:asc\|desc), page, per\_page (1-100).                                                                                                                                                                                                                                    |
| `list_components` | List the components (block schemas) of the space — their names are the "component" values a story content needs. Optional: search (name or display name), is\_root (true = content types only), in\_group (folder UUID), sort\_by, by\_ids (comma-separated ids).                                                                                                                                                                                                                                  |
| `list_releases`   | List the releases of the space — their ids are what release\_id accepts on create\_story / update\_story. Optional: branch\_id.                                                                                                                                                                                                                                                                                                                                                                    |
| `list_stories`    | List stories and folders of the space (without their content). Optional: starts\_with (full slug prefix, e.g. "blog/"), search (name or slug), text\_search (any string in the content), with\_tag (comma-separated tag names), with\_parent (folder id), folder\_only, story\_only, is\_published (booleans), contain\_component (comma-separated block names), sort\_by (e.g. "created\_at:desc"), by\_ids (comma-separated ids), in\_release (release id), page, per\_page (1-100, default 25). |
| `list_tags`       | List the tags of the space — their names are what tag\_list and with\_tag accept. Optional: search, page, per\_page (1-100).                                                                                                                                                                                                                                                                                                                                                                       |

## Write actions (3)

| Action         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `create_story` | Create a story (draft unless publish is true) or a folder. Arguments: name (string); slug (string, URL-safe, unique in its folder); content (object, required for a story, omitted for a folder: its "component" field is a content type name from list\_components, the other keys are that component's fields, e.g. \{"component":"page","title":"Hello","body":\[]}); parent\_id (optional, folder id as number or digit string, 0 = root); is\_folder (optional boolean); is\_startpage (optional boolean); tag\_list (optional array of tag name strings); publish (optional boolean, true publishes immediately); release\_id (optional release id from list\_releases).                                           |
| `create_tag`   | Create a tag in the space. Arguments: name (string, case-insensitive, may contain spaces, unique in the space); story\_id (optional, number or digit string — also assigns the tag to that story).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `update_story` | Update a story, and optionally publish it. content REPLACES the stored content: read the story with get\_story first and resend the whole block tree. Arguments: story\_id (number or digit string); name, slug (optional strings); content (optional object, root "component" field required); parent\_id (optional folder id, 0 = root); is\_startpage (optional boolean); tag\_list (optional array of tag name strings, replaces the tags); publish (optional boolean — true publishes the story; false does NOT unpublish it); force\_update (optional boolean, true overrides a story locked by another editor); lang (optional string, language code to publish individually); release\_id (optional release id). |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.
