Skip to main content

Get Your API Key

First, you’ll need to get your API key from the Mark2Notion dashboard.
1

Sign Up

Visit mark2notion.com and create an account.
2

Get API Key

Navigate to your dashboard and copy your API key.
3

Connect Notion (for page operations)

Click “Connect Notion” in your dashboard to authorize access to your workspace via OAuth. Required for /append, /append-blocks, /clear-page, and /notion-to-markdown.

Get the Page URL or ID

Pass a URL or page ID as the pageId parameter:
  • Full Notion page URL: https://notion.so/Your-Page-Title-abc123def456
  • Or just the page ID: abc123def456
Both formats are accepted — the API normalizes them automatically.

Using a Manual Notion Token (Advanced)

If you prefer not to use OAuth, you can pass a notionToken directly in each request instead.
1

Create a Notion Integration

Go to notion.so/my-integrations, click “New integration”, select your workspace, and copy the Internal Integration Token (starts with ntn_).
2

Share the Target Page

Open your Notion page, click the ··· menu → ConnectionsAdd connection, then select your integration. Repeat for each page you want to access.
3

Pass the Token in Requests

Include notionToken in your request body alongside pageId. The OAuth connection is not needed when a token is provided directly.

Make Your First Request

Let’s convert some Markdown to Notion blocks:
curl -X POST "https://api.mark2notion.com/api/convert" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "markdown": "# Hello World\n\nThis is my **first** API call!"
  }'

Try with Postman

Prefer using Postman? We’ve got you covered with a ready-to-use collection:
1

Fork the Collection

Visit our Postman collection on the Postman API Network and fork it to your workspace.
2

Watch for Updates

Click “Watch” on the collection to get notified when we add new endpoints and examples.
3

Configure Your API Key

Set your Mark2Notion API key in the collection’s environment variables.

Expected Response

{
  "status": "success",
  "data": {
    "blocks": [
      {
        "type": "heading_1",
        "heading_1": {
          "rich_text": [
            {
              "type": "text",
              "text": {
                "content": "Hello World"
              }
            }
          ]
        }
      },
      {
        "type": "paragraph",
        "paragraph": {
          "rich_text": [
            {
              "type": "text",
              "text": {
                "content": "This is my "
              }
            },
            {
              "type": "text",
              "text": {
                "content": "first"
              },
              "annotations": {
                "bold": true
              }
            },
            {
              "type": "text",
              "text": {
                "content": " API call!"
              }
            }
          ]
        }
      }
    ],
    "blockCount": 2
  }
}

Next Steps

Now that you’ve made your first request, you can:

Append to Notion

Learn how to append content directly to Notion pages.

Handle Errors

Understand error responses and how to handle them.

Authentication

Learn more about API authentication and rate limits.

Give Feedback

Share your experience and help us improve.