Guide · Make.com · Errors

Make Notion "invalid_request_url": fix the empty page ID after Gmail and Search Objects

Fix Notion invalid_request_url in Make: Search Objects shows green but returns no page ID, so the PATCH URL ends at /v1/pages/. Filter, fix the search, use Notion modules.

Disclosure: this guide has one affiliate link to Make, marked "affiliate link", and mentions our Fiverr fix service. Error messages, settings and limits come from Make Help Center / app docs, Notion API docs and Make Community thread 110323 checked on 14 October 2026; anything we could not confirm is flagged for review before publishing. We did not reproduce these in a live Make scenario for this guide. Prices, where mentioned, are as seen from the US.

Short answer: Notion's API returns invalid_request_url when the page URL ends at /v1/pages/ with no page ID. In Make that usually means Gmail → Notion Search Objects looked successful (green ✓1) but the output bundle had an empty ID, and HTTP › Make a request built https://api.notion.com/v1/pages/{{empty}}. Fix the search (and prefer Notion's own Update modules over a bare HTTP PATCH).

Everything here works on Make's Free plan.

What invalid_request_url means

Notion's HTTP status reference lists status 400 with code invalid_request_url and message like Invalid request URL when the request URL is not valid. A URL that is literally https://api.notion.com/v1/pages/ (nothing after the last slash) matches that class of failure.

Make Community thread 110323 (June 2026) describes exactly this: Gmail Watch Emails → Notion Search Objects → HTTP PATCH; Search Objects showed green ✓1 while Page ID mapped empty into the HTTP URL.

Green ✓1 is not "one match found"

Community answers in that thread stress: a green check with 1 means the module ran once and returned a bundle, not that a Notion page was found. Open the output bubble. If the ID / page fields are empty, the next HTTP URL will be invalid even though Search Objects did not throw.

Treat "module success" and "business match found" as two different checks. Add a filter after Search Objects: Page ID (or equivalent) Exists before any update module runs.

  1. Confirm the CRM page or data source is shared with your Make Notion connection (Notion → Add connections for internal integrations; reauthorize public connections after sharing new pages). Make's Notion app docs require sharing databases for them to appear.
  2. Prefer current Data Source modules over Legacy database-item modules. Make documents that from 3 September 2025 Notion API 2025-09-03 uses data_source_id for new modules; Legacy modules still use database_id.
  3. Match the property type in the Search Objects filter. Thread replies note email properties need an email-style filter, not a plain text equals against a mismatched type.
  4. Normalize addresses the same way on both sides (trim, consistent case) before comparing.
  5. Inspect the Search Objects output bundle for the page/data-source item ID you will map.

Prefer Notion Update modules over raw HTTP

Make's Notion app includes Update a Data Source Item, Update a Page, and Make an API Call. Community staff advised using Notion modules (with the existing connection) instead of a generic HTTP module with no Notion auth. That avoids hand-built URLs and missing Notion-Version headers.

If you must use HTTP › Make a request:

  • Method PATCH, URL https://api.notion.com/v1/pages/<page_id> only when page_id is non-empty (Notion Update page).
  • Send Notion's required headers (authorization and Notion-Version) as documented by Notion.
  • Never map a possibly empty ID into the path; filter first.

Safe Gmail → mark Replied pattern

  1. Gmail › Watch emails (or a label watch).
  2. Notion › Search Objects / search data source items by email.
  3. Filter: ID Exists (and optionally status is not already Replied).
  4. Notion › Update a Data Source Item (or Update a Page): set Status / Last contacted.
  5. Optional: log the Message ID in Sheets so repeats do not re-process (see free quote-reply-signal-free for a Gmail-reply → Sheets pattern).

For temporary Notion or HTTP failures after a valid ID exists, attach Retry (formerly Break) and enable incomplete executions, not for empty-ID URL errors, which will not heal by repeating.

Sources checked (14 October 2026)

FAQ

What does invalid_request_url mean in Notion?
Notion's status codes list 400 invalid_request_url when the request URL is not valid, for example /v1/pages/ with no page ID.
Why does Search Objects show green if nothing was found?
A green check with 1 means the module ran and returned a bundle. Open the output: the ID can still be empty.
Should I use HTTP or Notion modules to update a page?
Prefer Notion's Update a Data Source Item or Update a Page with your Make connection. Use HTTP only with a filtered, non-empty page ID and Notion's required headers.

Mark a lead Replied when they answer

Free template: marks one matching row Replied when a tagged Gmail reply arrives.

Notion step still failing? Make scenario fix on Fiverr (async, from $20 as seen from the US).