Notion · Arazzo Workflow

Notion Create a Page and Read Back Its Content

Version 1.0.0

Create a standalone page with content blocks, then retrieve that page's block children.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub CollaborationDatabaseIdeasNotesProductivityProjectT1TaskWikiWorkspaceArazzoWorkflows

Provider

notion

Workflows

create-page-read-children
Create a page with content and read back its block children.
Creates a page as a child of an existing page with a title and a paragraph block, then retrieves the page's child blocks to verify the content.
2 steps inputs: bodyText, notionVersion, pageTitle, parentPageId, token outputs: blocks, pageId
1
createPage
Create a page under the parent page with a title property and an initial paragraph block of content.
2
readChildren
Retrieve the child blocks of the new page by passing the page ID as the block ID, confirming the appended content is present.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Notion Create a Page and Read Back Its Content
  summary: Create a standalone page with content blocks, then retrieve that page's block children.
  description: >-
    A write-then-verify pattern. The workflow creates a page under a parent page
    with an initial paragraph of content, then retrieves the page's block
    children using the page ID as the block ID to confirm the content was
    written. Every step spells out its request inline — including the
    Authorization bearer token and the required Notion-Version header — so the
    flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: blocksApi
  url: ../openapi/notion-blocks-api-openapi.yml
  type: openapi
- name: pagesApi
  url: ../openapi/notion-pages-api-openapi.yml
  type: openapi
workflows:
- workflowId: create-page-read-children
  summary: Create a page with content and read back its block children.
  description: >-
    Creates a page as a child of an existing page with a title and a paragraph
    block, then retrieves the page's child blocks to verify the content.
  inputs:
    type: object
    required:
    - token
    - notionVersion
    - parentPageId
    - pageTitle
    - bodyText
    properties:
      token:
        type: string
        description: Notion integration token passed as a bearer credential.
      notionVersion:
        type: string
        description: The Notion API version date sent in the Notion-Version header.
      parentPageId:
        type: string
        description: The ID of the existing page that will be the parent of the new page.
      pageTitle:
        type: string
        description: Plain-text title for the new page.
      bodyText:
        type: string
        description: Plain-text content for the initial paragraph block on the page.
  steps:
  - stepId: createPage
    description: >-
      Create a page under the parent page with a title property and an initial
      paragraph block of content.
    operationId: createPage
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.token"
    - name: Notion-Version
      in: header
      value: $inputs.notionVersion
    requestBody:
      contentType: application/json
      payload:
        parent:
          type: page_id
          page_id: $inputs.parentPageId
        properties:
          title:
            title:
            - type: text
              text:
                content: $inputs.pageTitle
        children:
        - object: block
          type: paragraph
          paragraph:
            rich_text:
            - type: text
              text:
                content: $inputs.bodyText
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      pageId: $response.body#/id
  - stepId: readChildren
    description: >-
      Retrieve the child blocks of the new page by passing the page ID as the
      block ID, confirming the appended content is present.
    operationId: retrieveBlockChildren
    parameters:
    - name: block_id
      in: path
      value: $steps.createPage.outputs.pageId
    - name: page_size
      in: query
      value: 100
    - name: Authorization
      in: header
      value: "Bearer $inputs.token"
    - name: Notion-Version
      in: header
      value: $inputs.notionVersion
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      blocks: $response.body#/results
      hasMore: $response.body#/has_more
  outputs:
    pageId: $steps.createPage.outputs.pageId
    blocks: $steps.readChildren.outputs.blocks

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/notion-create-page-read-children-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.