Storyblok · Arazzo Workflow

Storyblok Publish and Verify Delivery

Version 1.0.0

Publish a draft story via the Management API and verify it is live through the Content Delivery API.

1 workflow 1 source API 1 provider
View Spec View on GitHub CMSContent DeliveryContent ManagementHeadless CMSImage OptimizationREST APIVisual EditorWebhookArazzoWorkflows

Provider

storyblok

Workflows

publish-and-verify-delivery
Publish a story and confirm it is served by the Content Delivery API.
Reads the management copy of a story, publishes it, and then verifies the published version is retrievable via the public delivery token.
3 steps inputs: deliveryToken, space_id, story_id outputs: deliveredSlug, deliveredStoryId, publishedAt
1
getStory
Read the management copy of the story to confirm it exists before publishing.
2
publishStory
Publish the current draft version of the story.
3
verifyDelivery
Fetch the published story from the public Content Delivery API by its numeric ID to confirm the published version is being served.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Storyblok Publish and Verify Delivery
  summary: Publish a draft story via the Management API and verify it is live through the Content Delivery API.
  description: >-
    Closes the loop between the Management API and the Content Delivery API.
    A story is published through the Management API, then the same story is
    fetched from the public Content Delivery endpoint by its numeric ID to
    confirm the published version is actually being served. Every step spells
    out its request inline so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: storiesApi
  url: ../openapi/storyblok-stories-api-openapi.yml
  type: openapi
workflows:
- workflowId: publish-and-verify-delivery
  summary: Publish a story and confirm it is served by the Content Delivery API.
  description: >-
    Reads the management copy of a story, publishes it, and then verifies the
    published version is retrievable via the public delivery token.
  inputs:
    type: object
    required:
    - space_id
    - story_id
    - deliveryToken
    properties:
      space_id:
        type: integer
        description: Numeric ID of the Storyblok space.
      story_id:
        type: integer
        description: Numeric ID of the story to publish and verify.
      deliveryToken:
        type: string
        description: Public Content Delivery API token for the space.
  steps:
  - stepId: getStory
    description: Read the management copy of the story to confirm it exists before publishing.
    operationId: getManagementStory
    parameters:
    - name: space_id
      in: path
      value: $inputs.space_id
    - name: story_id
      in: path
      value: $inputs.story_id
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      storyId: $response.body#/story/id
  - stepId: publishStory
    description: Publish the current draft version of the story.
    operationId: publishStory
    parameters:
    - name: space_id
      in: path
      value: $inputs.space_id
    - name: story_id
      in: path
      value: $inputs.story_id
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      publishedAt: $response.body#/story/published_at
  - stepId: verifyDelivery
    description: >-
      Fetch the published story from the public Content Delivery API by its
      numeric ID to confirm the published version is being served.
    operationId: getStoryById
    parameters:
    - name: id
      in: path
      value: $inputs.story_id
    - name: token
      in: query
      value: $inputs.deliveryToken
    - name: version
      in: query
      value: published
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deliveredStoryId: $response.body#/story/id
      deliveredSlug: $response.body#/story/full_slug
  outputs:
    publishedAt: $steps.publishStory.outputs.publishedAt
    deliveredStoryId: $steps.verifyDelivery.outputs.deliveredStoryId
    deliveredSlug: $steps.verifyDelivery.outputs.deliveredSlug

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/storyblok-publish-and-verify-delivery-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.