From Mexico, the agent failure I keep hitting is not a bad edit. It is a fetch that never had a real address. Cloudflare’s Oct 2 post names that habit. “Fun fact: when you use an agent and it needs to fetch a live web page, the agent usually just guesses the URL of the page and then makes a tool call to curl it.” They say that is why a fetch sometimes comes back “404 Not Found”, “if the agent incorrectly guesses the URL of that information.” I have not counted those 404s. The sentence is theirs.
The headline on the page is Introducing Web Search API via AI Gateway. It dates the post October 2, 2026. Michelle Chen, Sam Else, and Gabriel Massadas are the byline. “Today, we’re announcing Cloudflare’s partnership with web search providers to bring you grounded intelligence via AI Gateway.” The partners they name at the start are Ceramic.ai, Exa, and Linkup. I have not sent a query.
What landed on the gateway
“Cloudflare’s AI Gateway is the flagship integration point for our new Web Search API product.” They describe the gateway as the control plane, with observability, unified billing, security, and access controls already on it. Search calls show up in the normal logs, and “web search queries draw down from your AI Gateway credit balance.” You can also use “Bring-Your-Own-Key (BYOK) with web search providers, as we do with model inference providers.” That sits next to paying with gateway credits. They do not say a provider key is required when the query draws on that balance.
The price line is theirs, and it is not a figure. “We also offer web search directly at list API pricing from our partners, without any additional markup.” The post does not print a dollar amount. The docs page, last updated the same day, says you pay with AI Gateway credits “at each provider’s list API price, with no additional markup” and that you can bring your own provider key. I have not checked an invoice.
Three ways onto it, with the status they printed.
- REST. The post shows a POST to the account path ending in
/ai/websearch/, with a query, a provider, and a limit. The sample provider isceramic. - Workers.
env.AI.websearch, with a gateway id, a query, and a provider. Their sample usesexa. - Same shape across providers. The docs say you “Choose between Ceramic.ai, Exa, and Linkup with a single provider parameter” and that “All providers return results in the same format”
What comes back, on the docs page, is “titles, URLs, and descriptions” that you pass into the model’s context. “Instead of guessing URLs or relying on a model’s training cutoff, your agent sends a search query” and gets structured results back. The blog’s own example is a coding one. “if your agent was building with Cloudflare developer tools, it might miss all the new products and features we’re releasing during this Birthday Week” Search is how they say you pick up the current docs. I have not watched a page come back.
A search result is not a license to crawl
They tie the launch to crawler rules. Partners “have committed to meeting Cloudflare’s bot crawling standards.” The crawler “must comply with Cloudflare’s publicly stated requirements for “Verified bots””, and “web search responses must include a link to the location of crawled content.” The docs shorten that. “Every provider commits to Cloudflare’s verified bot requirements and returns a link to the source of every result.” I have not compared a result link with a robots file. A link in the payload is not the same as me checking the crawl.
The retention line is easy to over-read. “We will identify partners supporting Zero Data Retention (ZDR), so that you know that your data is not retained.” That is a promise to label partners. It is not a statement that every query is already zero-retention. I would not put a customer prompt through it on the strength of a verb in the future tense.

The tool you do not have to write is not here yet
“Coming soon: Server tools” is the heading. “We are actively building native Server Tools directly into AI Gateway. Soon, you won’t need to define tools yourself” is the next line, and it continues into the harness they have not shipped. “Web search will be one of the first tools we incorporate into our stack of server tools” is how they place this API in that later stack. Until that ships, they say you orchestrate it yourself. The model emits a tool call, your Worker runs env.AI.websearch, and you send the JSON back as the tool result. The snippet is on the post. I have not run it.
The blog never prints the word beta. The docs page does. Under the title it says “Available in open beta” The visible “Last updated” stamp is Oct 2, 2026. An open beta is something I can read and still refuse to make the default path for every fetch in a repo.
What I would do with it
If an agent I already use is curling URLs it invented, I would put a search call in front of the fetch and keep the fetch for a URL the result actually returned. I would not drop the fetch. A search snippet is not the page. The docs say you get titles, URLs, and descriptions. The page is still a second step, and I have not measured how often that second step is the right page.
I would also leave those server tools alone until they are no longer described as coming soon. Wiring one tool in a Worker is smaller than waiting for the control plane to grow a built-in. And I would not move a stack onto AI Gateway because a Birthday Week post added search. The gateway, the credit balance, and the provider key are the parts I would check before the first query. I have not sent one. The date on the post is October 2, 2026, and the open-beta line is on the docs from the same day.
Featured image: Suomenlinna Church, which doubles as a lighthouse, on a foggy night, 30 January 2024, photographed by Ragnar Ljusström, Wikimedia Commons, CC BY-SA 4.0. This crop is a derivative: a 1400×900 crop of the lantern and beam from the file’s 1920px thumbnail, with a mild warm grade. The original upload returned HTTP 200 and was not the file saved.