Skip to main content

Notion API Integration

Display data from your Notion database on your Studio.Design site using the Data Connect API. This article walks you through Notion setup, API configuration in Studio.Design, and connecting data to dynamic lists, pages, and modals.

Note: About third-party service integrations. This guide includes steps performed in Notion. Notion's features, behavior, and any actions not described in this article may fall outside the scope of our chat support. The Notion screens and specifications shown in this article are based on information as of April 2026. If your actual screen looks different, please refer to Notion's official documentation.

What you'll need

To connect the Notion API with Studio.Design, you'll need the following:

  • A Notion account and the workspace you want to connect

  • The Notion database (a page in table format) you want to connect

  • An "Internal Integration Token" (Internal Integration Secret) issued in Notion

  • A project on the Business plan or higher (required to use the Data Connect API feature) on Studio.Design

For detailed information on Notion API usage terms and specifications, please refer to the official Notion documentation.


Step 1. Create an integration in Notion

Set up an integration and an API key in Notion to connect with Studio.Design.

  1. Go to Notion's internal integrations settings and click [+ New integration].

  2. Fill in the basic information for your integration:

    • Integration name

    • Icon

    • Associated workspace: Select the workspace you want to connect.

  3. Click [Create] to create the integration.

  4. In the dialog that appears, click [Integration settings].

  5. On the integration edit screen, copy the [Internal Integration Secret].

Note: The Internal Integration Secret is sensitive information used for API authentication. Keep it secure and don't share it with others.


Step 2. Grant the integration access to your Notion database

Allow the integration you created to access the target database.

  1. Open the Notion database page you want to connect.

  2. Click the three-dot menu […] in the top right.

  3. At the bottom of the menu, click [Connections] and select the integration you created in Step 1.


Step 3. Set up the API connection in Studio.Design

Before configuring the endpoint in Studio.Design, gather the following information:

  1. Database ID: A 32-character alphanumeric string unique to your database.

    You'll use this when entering the URL during endpoint setup.

    Open the target database in your browser and copy the 32-character alphanumeric string that appears after https://www.notion.so/ and before ? (or, if you're using a custom workspace domain, the 32 characters that come right after the workspace name and before ?).

    Example: For https://www.notion.so/d982XXXXXXXXXXXXXXXXXXXXXXXXXXXX?v=..., the ID is d982XXXXXXXXXXXXXXXXXXXXXXXXXXXX.

  2. HTTP headers: When registering the endpoint, use the following as request headers:

    • Notion-Version: The API version you're using, such as 2022-06-28.

    • Content-Type: application/json


Step 4. Add API authentication in Studio.Design

Register the authentication info needed to access the Notion API from the Studio.Design design editor.

  1. Click the [Connections] icon in the left navigation of the editor.

  2. Select the [API] tab.

  3. Click the [+] or [+ Add] button under [Authentication] to create a new authentication.

  4. In the dialog that appears, fill in the following fields:

    • Name: Enter any name for this authentication (e.g., Notion).

    • Key: Authorization

    • Value: Bearer {Internal Integration Token} (enter the token you copied in Step 1 after Bearer)

  5. Click [Save] to save your authentication info.


Step 5. Register the Notion endpoint

In the Studio.Design design editor, add an endpoint for your Notion database.

  1. Open the [API] tab from the [Connections] icon on the left side of the design editor.

  2. Click [+] or [+ Add] under [Endpoints].

  3. On the screen that appears, configure the following:

  4. Select POST as the HTTP method and click [Test connection].

  5. Confirm that the status "200 OK" is returned along with a response. If the sample data looks good, click [Save] to save the endpoint settings.

Values to enter in the request headers

Key

Value

Notion-Version

The API version you're using, such as 2022-06-28

Content-Type

application/json


Step 6. Use Notion data in dynamic elements

Once the connection is set up, you can display data retrieved from the Notion API in a dynamic list. Connect data to elements from the [Data] tab in the right panel.

For detailed instructions, see the following help article:


Step 7. Bind retrieved API variable data (properties) to box elements

Connect the variable data (properties) retrieved from the API to box elements inside the list. For detailed instructions, see the following help article:


Customize how property text is displayed

You can adjust how text properties appear—for example, changing date formats or limiting the number of characters shown.


Retrieving detailed data with the Notion API

This article explains how to retrieve list data using POST /v1/databases/{database_id}/query, but the Notion API also lets you retrieve detailed data for a single page.

To retrieve detailed data, select GET as the HTTP method and register the endpoint as follows:

Key

Value

id

The page_id string obtained from Notion

For the Notion integration authentication header and other request headers such as Notion-Version, use the same settings as when retrieving list data.

Did this answer your question?