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.
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.
Fix the Notion search first
- 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.
- Prefer current Data Source modules over Legacy database-item modules. Make documents that from 3 September 2025 Notion API
2025-09-03usesdata_source_idfor new modules; Legacy modules still usedatabase_id. - 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.
- Normalize addresses the same way on both sides (trim, consistent case) before comparing.
- 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 whenpage_idis 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
- Gmail › Watch emails (or a label watch).
- Notion › Search Objects / search data source items by email.
- Filter: ID Exists (and optionally status is not already Replied).
- Notion › Update a Data Source Item (or Update a Page): set Status / Last contacted.
- 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)
-
Notion status codes:
invalid_request_url - Notion Update page
- Make Notion app (modules, data source migration, sharing)
- Community 110323
- content_gaps.csv row 12 (priority 5)
Stuck on this error? I'll fix your Make scenario from the blueprint. No login, no calls. From $20 on Fiverr
Get it fixed on Fiverr (opens Fiverr in a new tab)
Don't have a Make account yet? You can build and test this scenario on Make's free plan.
Create a free Make account (opens Make in a new tab)
Affiliate link: Flowpaja may earn a commission at no extra cost to you.
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.
Top comments (0)