---
title: FlowMotion
description: FlowMotion(opens in a new window) is Storyblok’s content operations platform. Built on n8n’s powerful engine, it connects the CMS with the rest of your tech stack and lets you automate content workflows and orchestrate AI agents.
url: https://storyblok.com/docs/concepts/flowmotion
---

# FlowMotion

[FlowMotion](https://www.storyblok.com/lp/flowmotion) is Storyblok’s content operations platform. Built on n8n’s powerful engine, it connects the CMS with the rest of your tech stack and lets you automate content workflows and orchestrate AI agents.

Find out [what you and your team can achieve with FlowMotion](https://www.storyblok.com/mp/storyblok-flowmotion-automation-and-orchestration), explore workflow automation ideas in a video tour, or continue reading to learn more.

[![Video thumbnail for "Five Workflows you should try with Storyblok's FlowMotion"](https://img.youtube.com/vi/RjvhqunH1-A/mqdefault.jpg)](https://www.youtube.com/watch?v=RjvhqunH1-A)

Five Workflows you should try with Storyblok's FlowMotion

## How FlowMotion works

FlowMotion embeds n8n within the Storyblok app, delivering seamless integration with numerous services. Within FlowMotion, you have access to custom pre-built Storyblok nodes maintained by Storyblok, so you don’t have to build from scratch. When Storyblok APIs change or new capabilities are introduced, the corresponding nodes evolve continuously.

This setup means that Storyblok handles infrastructure, uptime guarantees, scaling, and operational maintenance. You get a fully managed, single-tenant, dedicated n8n instance that turns every content event (create, update, publish, approve, translate, etc.) into an integral element in your digital ecosystem.

### From content management to content operations

FlowMotion bridges Storyblok events with 500+ enterprise tools, turning it from a passive repository into an active, centrally governed system that injects automation directly into your content platform.

Whenever something happens in Storyblok—a story is published, an asset is updated, a translation is added, a block is created—FlowMotion goes beyond the CMS to activate a chain of events; here are a few examples of automation scenarios:

-   Open a Jira ticket to let editors know a translation is ready for review
-   Hook into a text-to-image LLM to create an open graph visual for social media
-   Email the hiring manager when a new job description is posted on the website
-   Send a Slack message to a space admin when API traffic reaches a specific threshold

The potential time-saving tasks are endless.

> [!NOTE]
> FlowMotion is a paid feature. Check Storyblok's [pricing](https://www.storyblok.com/pricing) for more information.

### Recap

The main benefits of FlowMotion are governance, acceleration, and integration:

-   **Enterprise security and isolation**—each organization gets its own private instance, not a shared environment
-   **Extended content operations platform**—SSO, permissions, assets, and workflows connected directly to the CMS
-   **Exclusive Storyblok nodes**—leverage dozens of pre-made API endpoints designed specifically for content-driven workflows

## Nodes and workflows

To make the most of FlowMotion, it’s best to get familiar with a few key concepts:

1.  In n8n, an automation is called a [workflow](https://docs.n8n.io/glossary/#workflow-n8n).
2.  Each step within a workflow is called a [node](https://docs.n8n.io/glossary/#node-n8n).
3.  The first step that determines when the workflow runs is called a [trigger](https://docs.n8n.io/glossary/#trigger-node-n8n).

Besides supporting hundreds of 3rd-party nodes maintained by n8n and its community, FlowMotion also maps Storyblok’s [Content Delivery API](https://www.storyblok.com/docs/api/content-delivery/v2) and [Management API](https://www.storyblok.com/docs/api/management) endpoints into nodes, offering dozens of CMS-specific triggers and actions that you can use for your automations.

> [!NOTE]
> As a Storyblok user, you may already be familiar with the concept of [workflows](https://www.storyblok.com/docs/manuals/workflows), a set of rules that controls how content moves from draft to published. While these rely on manual intervention, FlowMotion workflows operate behind the scenes. Instead of just tracking whether content is “approved”, FlowMotion coordinates what happens next: syncing systems, triggering reviews, enforcing governance, and more. It can also let external tools trigger workflows that execute actions within Storyblok.

## How to use FlowMotion

FlowMotion is an organization-level feature, which means you can use it to execute workflows across spaces.

To open [FlowMotion](https://app.storyblok.com/#/me/org/flowmotion), navigate to **Storyblok** → **My Organization** → **FlowMotion**.

[10 FlowMotion Tips for Developers](https://www.storyblok.com/mp/using-storyblok--flowmotion-10-lessons-to-learn-early) Build workflows faster, debug less, and keep automations maintainable

### Provide credentials

Before using Storyblok’s FlowMotion nodes, you need to provide [credentials](https://docs.n8n.io/glossary/#credential-n8n). Ensure you have the required Storyblok [access tokens](https://www.storyblok.com/docs/concepts/access-tokens), and follow the steps below:

1.  In the **Overview** section, select the **Credentials** tab.
2.  To add a new token, select **Create credential** in the top-left.
3.  Scroll or type _Storyblok_, and choose either **Storyblok Content Delivery API** or **Storyblok Management API**.
4.  Fill out the necessary details and **Save**.

### Create a workflow

Now, back in the **Workflows** tab, select **Create workflow**, and add nodes to construct your automation journey.

> [!WARNING]
> Each FlowMotion workflow must include at least one Storyblok node.

## Custom Storyblok nodes (APIs)

FlowMotion integrates Storyblok’s APIs as pre-built nodes, offering dozens of triggers and actions that you can use to build your own automation.

The following is a list of all native API endpoints' nodes:

### Content Delivery API

Two triggers and nine actions available.

#### Triggers

-   [On a Schedule](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/)
-   [On a Webhook call](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/)

#### Actions

-   Datasource Entries
    -   [List datasource entries](https://www.storyblok.com/docs/api/content-delivery/v2/datasources/retrieve-multiple-datasource-entries)
-   Datasources
    -   [List datasources](https://www.storyblok.com/docs/api/content-delivery/v2/datasources/retrieve-multiple-datasources)
    -   [Get a Datasource](https://www.storyblok.com/docs/api/content-delivery/v2/datasources/retrieve-a-single-datasource)
-   Links
    -   [List links](https://www.storyblok.com/docs/api/content-delivery/v2/links/retrieve-multiple-links)
    -   [Get a link](https://www.storyblok.com/docs/api/content-delivery/v2/links/retrieve-single-link)

-   Spaces
    -   [Retrieve space](https://www.storyblok.com/docs/api/content-delivery/v2/spaces/retrieve-current-space)
-   Stories
    -   [Get a story](https://www.storyblok.com/docs/api/content-delivery/v2/stories/retrieve-a-single-story)
    -   [List stories](https://www.storyblok.com/docs/api/content-delivery/v2/stories/retrieve-multiple-stories)
-   Tags
    -   [List tags](https://www.storyblok.com/docs/api/content-delivery/v2/tags/retrieve-multiple-tags)

### Management API

15 triggers and 59 actions available.

#### Triggers

-   Story Published
-   Story Unpublished
-   Story Deleted
-   Story Moved
-   Datasource Entry Modified
-   Asset Uploaded
-   Asset Replaced
-   Asset Deleted
-   Asset Restored
-   User Added
-   User Removed
-   User Role Updated
-   Workflow Stage Changed
-   Pipeline Stage Deployed
-   Release Merged

#### Actions

-   Approvals
    -   [Create an approval request](https://www.storyblok.com/docs/api/management/approvals/create-approval)
-   Asset Folders
    -   [List Asset Folders](https://www.storyblok.com/docs/api/management/asset-folders/retrieve-multiple-asset-folders)
    -   [Create an Asset Folder](https://www.storyblok.com/docs/api/management/asset-folders/create-an-asset-folder)
    -   [Retrieve an Asset Folder](https://www.storyblok.com/docs/api/management/asset-folders/retrieve-a-single-asset-folder)
    -   [Update an Asset Folder](https://www.storyblok.com/docs/api/management/asset-folders/update-an-asset-folder)
    -   [Delete an Asset Folder](https://www.storyblok.com/docs/api/management/asset-folders/delete-an-asset-folder)
-   Assets
    -   [List Assets](https://www.storyblok.com/docs/api/management/assets/retrieve-multiple-assets)
    -   Create an Asset
    -   [Retrieve an Asset](https://www.storyblok.com/docs/api/management/assets/retrieve-one-asset)
    -   [Update an Asset](https://www.storyblok.com/docs/api/management/assets/update-asset)
    -   [Delete an Asset](https://www.storyblok.com/docs/api/management/assets/delete-an-asset)
    -   Clear trash
    -   [Get Signed URL for Asset Multipart Upload](https://www.storyblok.com/docs/api/management/assets/get-signed-response)
-   Components
    -   [List Components](https://www.storyblok.com/docs/api/management/components/retrieve-multiple-components)
    -   [Create a Component](https://www.storyblok.com/docs/api/management/components/create-a-component)
    -   Bulk Update Components
    -   [Retrieve a Component](https://www.storyblok.com/docs/api/management/components/retrieve-a-single-component)
    -   [Update a Component](https://www.storyblok.com/docs/api/management/components/update-a-component)
    -   [Delete a Component](https://www.storyblok.com/docs/api/management/components/delete-a-component)
    -   Restore a Component
    -   Rename Component Attribute
-   Statistics
    -   [Get API Traffic Statistics](https://storyblok.com/docs/api/management/statistics/retrieve-api-traffic-statistics)
    -   [Get Assets Traffic Statistics](https://storyblok.com/docs/api/management/statistics/retrieve-assets-traffic-statistics)
    -   [Get Statistics by Date](https://storyblok.com/docs/api/management/statistics/retrieve-statistics-by-date)
-   Releases (requires the [Releases app](https://www.storyblok.com/apps/releases_only))
    -   Start Release All Job
    -   [List Releases](https://www.storyblok.com/docs/api/management/releases/retrieve-multiple-releases)
    -   [Create a Release](https://www.storyblok.com/docs/api/management/releases/create-a-release)
    -   [Retrieve a Release](https://www.storyblok.com/docs/api/management/releases/retrieve-a-single-release)
    -   [Update a Release](https://www.storyblok.com/docs/api/management/releases/update-a-release)
    -   Update a Release (PATCH)
    -   [Delete a Release](https://www.storyblok.com/docs/api/management/releases/delete-a-release)
-   Spaces
    -   [List Spaces](https://www.storyblok.com/docs/api/management/spaces/retrieve-multiple-spaces)
    -   [Create a Space](https://www.storyblok.com/docs/api/management/spaces/create-a-space)
    -   [Retrieve a Space](https://www.storyblok.com/docs/api/management/spaces/retrieve-a-single-space)
    -   [Update a Space](https://www.storyblok.com/docs/api/management/spaces/update-a-space)
    -   [Delete a Space](https://www.storyblok.com/docs/api/management/spaces/delete-a-space)
-   Stories
    -   [List Stories](https://www.storyblok.com/docs/api/management/stories/retrieve-multiple-stories)
    -   [Create a Story](https://www.storyblok.com/docs/api/management/stories/create-a-story)
    -   Bulk Move Stories
    -   Get Reference Counts
    -   Launch Story
    -   [Retrieve a single story by ID](https://www.storyblok.com/docs/api/management/stories/retrieve-one-story)
    -   [Update a story](https://www.storyblok.com/docs/api/management/stories/update-a-story)
    -   Update UUID
    -   Discard changes for a story
    -   [Translate a story with AI](https://www.storyblok.com/docs/api/management/stories/ai-translate)
    -   Move a story to a new parent
    -   Undelete a story
    -   [Restore a story with a specific version](https://www.storyblok.com/docs/api/management/stories/restore-a-story-version)
    -   Overwrite a story with a specific version (requires the [Dimensions app](https://www.storyblok.com/apps/locales))
    -   [Duplicate a story](https://www.storyblok.com/docs/api/management/stories/duplicate-a-story)
    -   Merge a story into another (requires the [Dimensions app](https://www.storyblok.com/apps/locales))
    -   [Publish a story](https://www.storyblok.com/docs/api/management/stories/publish-a-story)
    -   [Unpublish a story](https://www.storyblok.com/docs/api/management/stories/unpublish-a-story)
    -   [Compare two versions of a story](https://www.storyblok.com/docs/api/management/stories/compare-a-story-version)
    -   [Check for unpublished dependencies of a story](https://www.storyblok.com/docs/api/management/stories/get-unpublished-dependencies)
    -   Retrieve all versions of a story
    -   [List story versions](https://www.storyblok.com/docs/api/management/stories/get-story-versions-new)
    -   Show story versions

## Additional resources

Learn more about n8n and its enterprise features (available as FlowMotion add-ons) in the official docs:

-   [n8n Docs](https://docs.n8n.io/)
-   [Build your first workflow](https://docs.n8n.io/try-it-out/tutorial-first-workflow/)
-   [Text courses](https://docs.n8n.io/courses/#available-courses)
-   [Video courses](https://docs.n8n.io/video-courses/)

  

## Pagination

-   [Previous: Fields](/docs/concepts/fields)
-   [Next: Internationalization](/docs/concepts/internationalization)
