← Back to all posts

1. Create a New Page for Your Database

  • In the left sidebar, under Private, click New Page.
  • Name it something like Notion DB CMS. This will be the home for your content database.

2.Add a Gallery View

  • At the bottom of the new page, add a Gallery.
  • This gallery will display your content items as cards.

3. Configure Properties

  • Open Settings → Edit Properties.
  • Add and adjust the following properties:

PropertyPurpose
TitleThe headline of your post/page
StatusWorkflow state: CreatedDraftLive (replace the default In Progress / Done)
SlugURL-friendly identifier for the page
ImageThumbnail or featured image
DateCreation date
TagsCategories or labels

Here’s what it looks like:

👉 Later, you’ll fetch only items with Status = Live for your frontend.

4. Create Your First Page

  • Click New Page inside the gallery.

  • Add some test content:

5. Set Up a Developer Integration

To connect your database via API, you need a Notion integration.

  1. Go to Notion Integrations: https://www.notion.so/profile/integrations
  2. Click New Integration.
  3. Fill in:
  4. Click Save.

  • In the Integration Name field – enter the name (I wrote tutorial-blog).
  • Associated Workspace – select our workspace.
  • Type – choose Internal.
  • Click

Configuration

  • Copy the Internal Integration Secret (this is your API key).
  • Capabilities: leave only Read Content enabled.
  • Under Access, click Edit Access and select your database.

It should look like this once selected:

  • Save changes.

6. Save Your Config in Notion

  • Back in your database, create a second page called Config.
  • Store your integration secret and other setup details there so you don’t lose them.

7. Get Your Database ID

  • In the sidebar, right‑click the three dots next to your database.
  • Select Copy Link.
  • The database ID is the long string between the / and the ? in the URL. Example:
  • Save this ID in your Config page. You’ll need it when connecting via API.

✅ Done!

You now have:

  • A Notion database set up as a CMS.
  • Properties configured for content management.
  • An integration with API access.
  • Your secret key and database ID saved.