Back to Integrations
integrationHTTP Request node
integrationNotion node

HTTP Request and Notion integration

Save yourself the work of writing custom integrations for HTTP Request and Notion and use n8n instead. Build adaptable and scalable Development, Core Nodes, and Productivity workflows that work with your technology stack. All within a building experience you will love.

How to connect HTTP Request and Notion

  • Step 1: Create a new workflow
  • Step 2: Add and configure nodes
  • Step 3: Connect
  • Step 4: Customize and extend your integration
  • Step 5: Test and activate your workflow

Step 1: Create a new workflow and add the first step

In n8n, click the "Add workflow" button in the Workflows tab to create a new workflow. Add the starting point – a trigger on when your workflow should run: an app event, a schedule, a webhook call, another workflow, an AI chat, or a manual trigger. Sometimes, the HTTP Request node might already serve as your starting point.

HTTP Request and Notion integration: Create a new workflow and add the first step

Step 2: Add and configure HTTP Request and Notion nodes

You can find HTTP Request and Notion in the nodes panel. Drag them onto your workflow canvas, selecting their actions. Click each node, choose a credential, and authenticate to grant n8n access. Configure HTTP Request and Notion nodes one by one: input data on the left, parameters in the middle, and output data on the right.

HTTP Request and Notion integration: Add and configure HTTP Request and Notion nodes

Step 3: Connect HTTP Request and Notion

A connection establishes a link between HTTP Request and Notion (or vice versa) to route data through the workflow. Data flows from the output of one node to the input of another. You can have single or multiple connections for each node.

HTTP Request and Notion integration: Connect HTTP Request and Notion

Step 4: Customize and extend your HTTP Request and Notion integration

Use n8n's core nodes such as If, Split Out, Merge, and others to transform and manipulate data. Write custom JavaScript or Python in the Code node and run it as a step in your workflow. Connect HTTP Request and Notion with any of n8n’s 1000+ integrations, and incorporate advanced AI logic into your workflows.

HTTP Request and Notion integration: Customize and extend your HTTP Request and Notion integration

Step 5: Test and activate your HTTP Request and Notion workflow

Save and run the workflow to see if everything works as expected. Based on your configuration, data should flow from HTTP Request to Notion or vice versa. Easily debug your workflow: you can check past executions to isolate and fix the mistake. Once you've tested everything, make sure to save your workflow and activate it.

HTTP Request and Notion integration: Test and activate your HTTP Request and Notion workflow

Automate Competitor Research with Exa.ai, Notion and AI Agents

This n8n workflow demonstrates a simple multi-agent setup to perform the task of competitor research. It showcases how using the HTTP request tool could reduce the number of nodes needed to achieve a workflow like this.

How it works

  • For this template, a source company is defined by the user which is sent to Exa.ai to find competitors.
  • Each competitor is then funnelled through 3 AI agents that will go out onto the internet and retrieve specific datapoints about the competitor; company overview, product offering and customer reviews.
  • Once the agents are finished, the results are compiled into a report which is then inserted in a notion database.

Check out an example output here: https://jimleuk.notion.site/2d1c3c726e8e42f3aecec6338fd24333?v=de020fa196f34cdeb676daaeae44e110&pvs=4

Requirements

  • An OpenAI account for the LLM.
  • Exa.ai account for access to their AI search engine.
  • SerpAPI account for Google search.
  • Firecrawl.dev account for webscraping.
  • Notion.com account for database to save final reports.

Customising the workflow

Add additional agents to gather more datapoints such as SEO keywords and metrics.

Not using notion? Feel free to swap this out for your own database.

Nodes used in this workflow

Popular HTTP Request and Notion workflows

OpenAI Chat Model node
Remove Duplicates node
+5

Automate Competitor Research with Exa.ai, Notion and AI Agents

This n8n workflow demonstrates a simple multi-agent setup to perform the task of competitor research. It showcases how using the HTTP request tool could reduce the number of nodes needed to achieve a workflow like this. How it works For this template, a source company is defined by the user which is sent to Exa.ai to find competitors. Each competitor is then funnelled through 3 AI agents that will go out onto the internet and retrieve specific datapoints about the competitor; company overview, product offering and customer reviews. Once the agents are finished, the results are compiled into a report which is then inserted in a notion database. Check out an example output here: https://jimleuk.notion.site/2d1c3c726e8e42f3aecec6338fd24333?v=de020fa196f34cdeb676daaeae44e110&pvs=4 Requirements An OpenAI account for the LLM. Exa.ai account for access to their AI search engine. SerpAPI account for Google search. Firecrawl.dev account for webscraping. Notion.com account for database to save final reports. Customising the workflow Add additional agents to gather more datapoints such as SEO keywords and metrics. Not using notion? Feel free to swap this out for your own database.
Merge node
Notion node
Aggregate node
+3

Automated Workflow for Daily LinkedIn Posts Using Notion

This workflow automates daily LinkedIn posts using Notion. It starts by fetching the day's post from a Notion database, processes and formats the content, including images, then publishes it on LinkedIn. Finally, it updates the post status in the Notion database. Set up Notion and LinkedIn credentials as required.
Notion node
LinkedIn node
Merge node
+3

Automate LinkedIn Outreach with Notion and OpenAI

This template is based on the following template. Thank you for the groundwork, Matheus. How it works: Store your snippets of text in a Notion table. Each snippet should have an image associated with it (copy + pasted into the text) Connect to your table via a Notion "integration", from which N8N can then query your pre-meditated posts The text is fed through an OpenAI assistant to boost engagement via formatting The re-formatted text along with the image pulled from the Notion snippet are combined into a post for your LinkedIn The row in the original Notion table from step 1 containing this post is set to a status of "Done" Set up steps: You will need to create a Notion "integration", which will yield a "secret key" which you enter into your N8N as a "Credential". You will need to create a LinkedIn "app" in order to post on your behalf. When creating your LinkedIn "app", you will be required to link this "app" to a company page on LinkedIn. If you are doing this for yourself, seach for the "Default Company Payge (for API testing)", and select this page as it is provided by LinkedIn for individuals. You can find your LinkedIn apps here, and if you get stuck, further instructions on setting up this workflow (including this LinkedIn OAuth piece) can be found in this YouTube Video Aide to these instructions. Lastly, you will need to create an OpenAI API key, found on your OpenAI Playground Dashboard. Once you created an API key, make sure you have an assistant created from the "Assistants" tab on the OpenAI dashboard. This assistant and its instructions will be needed for carrying out the re-formatting of your post.
Notion node
Gmail node
+2

Send labeled email to a Notion database

This workflow sends the contents of an email to a Notion database. The email must be labeled with a specific label for the workflow to trigger. The email subject will be the title of the Notion page, and a snippet of the email body will be the content of the Notion page. The email link will be added to the Notion page as a property. Prerequisites Notion account and Notion credentials. Google account and Google credentials. How it works On scheduled intervals, find all emails with a specific label. For each email, check if the email already exists in the Notion database. If it does not exist, create a new page in the Notion database, otherwise do nothing. When the task in the Notion database is checked off, the label will be removed from the email. Setup This workflow requires that you set up a Notion database or use an existing one with at least the following fields: Title (title) Thread ID (text) Email thread (URL) Additionally, create a label that will be used to trigger the workflow in Gmail. In this workflow, the label is called "Notion".
n8n node
HTTP Request node
+2

Automatically document n8n workflows directly in Notion database

Use case n8n workflows can go out of hand when you're automating as much as we do at n8n. We needed a place to document them and keep track of who owns and maintains them. To facilitate this we use this n8n workflow to automatically sync workflows directly to a Notion database if it has the tag sync-to-notion. How to setup Add your n8n api creds Add your Notion creds Create notion database with fields env id as text, isActive (dev) as boolean, URL (dev) as url, Workflow created at as date, Workflow updated at as date, Error workflow setup as boolean (Make sure page is connected) Add tag sync-to-notion to some workflows
HTTP Request node
Notion node
Merge node

Sync Outlook Calendar events to Notion

This workflow syncs Outlook Calendar events to a Notion database. The Outlook Calendar event must be within a specific time frame (default of within next year) for the workflow to pick up the event. The event subject will be the title of the Notion page, and the event link will be added to the Notion page as a property. Prerequisites Notion account and Notion credentials. Microsoft account and Microsoft credentials. How it works On scheduled intervals, find all Outlook Calendar events within a specific time frame. For each event, check if the event already exists in the Notion database. If it does not exist, create a new page in the Notion database, otherwise update the existing page. Setup This workflow requires that you set up a Notion database or use an existing one with at least the following fields: Title (title) Date (date) Event ID (text) Link (URL)
HTTP Request node
Webhook node
Notion node

Add articles to a Notion list by accessing a Discord slash command

This workflow allows you to add articles to a Notion reading list by accessing a Discord slash command. Prerequisites A Notion account and credentials, and a reading list similar to this template. A Discord account and credentials, and Discord Slash Command connected to n8n. Nodes Webhook node triggers the workflow whenever the Discord Slash command is issued. IF node checks the type returned by Discord. If the type is not equal to 1, it will return true, otherwise false. HTTP Request node makes an HTTP call to the link and gets the HTML of the webpage. HTML Extract node extracts the title from the HTML which we will use in the next node. Notion node adds the link to your Notion reading list. Set nodes set the reply values for Discord and register the Interaction Endpoint URL.
GraphQL node
Notion node
Aggregate node
+5

Create Linear tickets from Notion content

This workflow allows you to define multiple tickets/issues in a Notion page, then easily import them into Linear. Why is it useful? We use this workflow internally at n8n for collaboration between Product and Engineering teams: Engineering needs all work to be in our ticketing system (Linear) in order to keep track of it Product prefers to review features in Notion. This is because it and can be used to dump all your thoughts and organise them into themes afterwards, plus it better supports rich content like videos Features Supports rich formatting (bullets, images, videos, links, etc.) Keeps links between the Notion and Linear version, in case you need to refer back Allows you to assign each issue to a team member in the Notion definition Avoids importing the same issues twice if you run it again on the same page (meaning you can issues incrementally) You can see an example of the required format of the Notion page here.
Google Calendar node
Notion node
+5

2-way sync Notion and Google Calendar

This workflow syncs multiple Notion databases to your Google Calendar. And it works both ways. What events are supported? Everything except recurring events. All day events, multiple day events, start and end date… these are all supported. You set them in Notion and they stay in sync with Google. And vice versa. Why doesn’t it support recurring events? Notion doesn’t support recurring events yet. So when you create a recurring event in Google, it will only consider the first date, ignoring future occurrences of the event. Can I connect more than one Notion database? Yes. You can have many Notion databases synced to one Google Calendar account. You can see how to do it in the workflow instructions. It is recommended that you create more calendars in your account, so that you can link each calendar to a different database in Notion. But that’s a choice. What happens if I delete an event or page? Notion page deleted → Deletes event in Google Notion date property cleared → Deletes event in Google Google event deleted → Clears the date property in Notion, but keeps the page, so you don’t lose your work. Does it update the events? Yes. When you update the event in Google or in Notion it syncs both ways. How can I know what Notion item was linked to an event? Either by the name or by clicking the hyperlink in the event description that says: 👉 View in Notion. When I create a new event in Google, does it add an item to Notion? Yes. When you create an event inside one of your calendars, the item is synced to the corresponding Notion database. Does it sync event descriptions? No. The event description will always be “View in Notion”. Even if you change it in Google Calendar it will be overwritten when you make a change to the Notion page. 🎉 When you buy this template you receive step-by-step instructions on how to set it up. Check out my other templates 👉 https://n8n.io/creators/solomon/
Webhook node
Notion node
HTTP Request node

Add product ideas to Notion via a Slack command

Use Case In most companies, employees have a lot of great ideas. That was the same for us at n8n. We wanted to make it as easy as possible to allow everyone to add their ideas to some formatted database - it should be somewhere where everyone is all the time and could add a new idea without much extra effort. Since we're using Slack, this seemed to be the perfect place to easily add ideas and collect them in Notion. What this workflow does This workflow waits for a webhook call within Slack, that gets fired when users use the /idea command on a bot that you will create as part of this template. It then checks the command, adds the idea to Notion, and notifies the user about the newly added idea as you can see below: Creating your Slack bot Visit https://api.slack.com/apps, click on New App and choose a name and workspace. Click on OAuth & Permissions and scroll down to Scopes -> Bot token Scopes Add the chat:write scope Head over to Slash Commands and click on Create New Command Use /idea as the command Copy the test URL from the Webhook node into Request URL Add whatever feels best to the description and usage hint Go to Install app and click install Setup Add a Database in Notion with the columns Name and Creator Add your Notion credentials and add the integration to your Notion page. Fill the setup node below Create your Slack app (see other sticky) Click Test workflow and use the /idea comment in Slack Activate the workflow and exchange the Request URL with the production URL from the webhook How to adjust it to your needs You can adjust the table in Notion and for example, add different types of ideas or areas that they impact You might wanna add different templates in Notion to make it easier for users to fill their ideas with details Rename the Slack command as it works best for you How to enhance this workflow At n8n we use this workflow in combination with some others. E.g. we have the following things on top: We additionally have a /bug Slack command that adds a new bug to Linear. Here we're using AI to classify the bugs and move it to the right team. (see this template and this template) We also added other types, like /pain to be less solution-driven To make it easier for everyone to give input, we added a Votes column that allows everyone to vote on ideas/pain points in the list We're also running a workflow once a week that highlights the most popular new ideas and the most active voters (see here)
Notion node
Supabase node
Code node
+5

Provide Real-Time Updates for Notion Databases via Webhooks with Supabase

Purpose This enables webhooks for nearly realtime updates (every 5 seconds) from Notion Databases. Problem Notion does not offer webhooks. Even worse, the “Last edited time” property, we could use for polling, only updates every minute. This gives us a polling interval only as low as 2 minutes and we still need to implement a comparing mechanism to detect changes. Solution This workflow caches states in between while doing efficient polling & comparing. It brings down the update latency from 2 minutes to 5 seconds and also provides the output of the changes only. Demo How it works Database Pages are frequently polled while filtered by a last modified time stamp for more efficiency Retrieved pages get compared with previously cached versions in Supabase Only new and changed pages are pushed to a registered webhook Setup Create a new project in Supabase and import the DB schema (provided through Gumroad) Add a "Last edited time" property to your Notion Database, if it has none yet Define the dynamically generated settings_id from the settings table (Supabase) in the Globals node Define the Notion Database URL in the Globals node Define your custom Webhook URL in the last node where the results should be pushed to It is recommended to call this workflow using this template to prevent simultaneous workflow executions Set the Schedule Trigger to every 5 seconds or less frequent More detailed instructions provided within the workflow file and the illustrated instructions provided during the download Example output [ { "action": "changed", "changes": { "property_modified_at": "2024-06-04T17:59:00.000Z", "property_priority": "important" }, "data": { "id": "ba761e03-7d6d-44c2-8e8d-c8a4fb930d0f", "name": "Try out n8n", "url": "https://www.notion.so/Try-out-n8n-ba761e037d6d44c28e8dc8a4fb930d0f", "property_todoist_id": "", "property_id": "ba761e037d6d44c28e8dc8a4fb930d0f", "property_modified_at": "2024-06-04T17:59:00.000Z", "property_status": "Backlog", "property_priority": "important", "property_due": { "start": "2024-06-05", "end": null, "time_zone": null }, "property_focus": false, "property_name": "Try out n8n" }, "updated_at": "2024-06-04T17:59:42.144+00:00" } ]

Build your own HTTP Request and Notion integration

Create custom HTTP Request and Notion workflows by choosing triggers and actions. Nodes come with global operations and settings, as well as app-specific parameters that can be configured. You can also use the HTTP Request node to query data from any app or service with a REST API.

Notion supported actions

Append After
Append a block
Get Child Blocks
Get many child blocks
Get
Get a database
Get Many
Get many databases
Search
Search databases using text search
Get
Get a database
Get Many
Get many databases
Create
Create a pages in a database
Get
Get a page in a database
Get Many
Get many pages in a database
Update
Update pages in a database
Create
Create a pages in a database
Get Many
Get many pages in a database
Update
Update pages in a database
Create
Create a page
Get
Get a page
Search
Text search of pages
Archive
Archive a page
Create
Create a page
Search
Text search of pages
Get
Get a user
Get Many
Get many users
Use case

Save engineering resources

Reduce time spent on customer integrations, engineer faster POCs, keep your customer-specific functionality separate from product all without having to code.

Learn more

FAQs

  • Can HTTP Request connect with Notion?

  • Can I use HTTP Request’s API with n8n?

  • Can I use Notion’s API with n8n?

  • Is n8n secure for integrating HTTP Request and Notion?

  • How to get started with HTTP Request and Notion integration in n8n.io?

Looking to integrate HTTP Request and Notion in your company?

Over 3000 companies switch to n8n every single week

Why use n8n to integrate HTTP Request with Notion

Build complex workflows, really fast

Build complex workflows, really fast

Handle branching, merging and iteration easily.
Pause your workflow to wait for external events.

Code when you need it, UI when you don't

Simple debugging

Your data is displayed alongside your settings, making edge cases easy to track down.

Use templates to get started fast

Use 1000+ workflow templates available from our core team and our community.

Reuse your work

Copy and paste, easily import and export workflows.

Implement complex processes faster with n8n

red iconyellow iconred iconyellow icon