Skip to main content
6 minIntegration
Notion

Notion

Use Notion as the source of truth for your content generation instructions. Import pages into ABM.dev, edit locally, and sync changes back to Notion.

In this guide

  • Configure a Notion integration token
  • Import a Notion page as a content instruction
  • Sync local edits back to Notion

Prerequisites

  • An ABM.dev API key
  • A Notion workspace with admin access
  • A Notion internal integration (create one at notion.so/my-integrations)
1

Share the Notion page with your integration

Notion integrations can only see pages they've been granted access to. Open the page you want to use as an instruction, click Share, then invite your integration by name.

Integration tokens are org-scoped

The token is stored per organisation in ABM.dev — set it once under your settings and all team members get access to the same Notion workspace.
2

Import a page as a content instruction

Call the instruction import endpoint with the Notion page ID (the UUID in the page URL). You can either create a local copy or keep ABM.dev linked to the live Notion page.

Import instruction from Notion
curl -X POST https://api.abm.dev/v1/content/instructions/import-notion \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "notionPageId": "abc123def4567890abc123def4567890",
    "createLocalCopy": false
  }'

Setting createLocalCopy: false keeps ABM.dev in lockstep with the Notion page — changes in Notion show up in your next content generation run.

3

Sync local edits back to Notion

If you created a local copy and edited it inside ABM.dev, push the changes back to Notion with the sync endpoint.

Sync instruction to Notion
curl -X POST \
  https://api.abm.dev/v1/content/instructions/INSTRUCTION_ID/sync-notion \
  -H "x-api-key: YOUR_API_KEY"

Reference crawling

ABM.dev walks Notion page references so linked pages are included as context when generating content.

Cache freshness

Pages are cached on import. Re-import (or disable the local copy) to pull the latest Notion state.

Next steps