What is a mock API webhook (and how to make one free)

A mock webhook is a real URL that returns the response you define. Publish one from any payload in Yellorn, point your app at it, and watch requests arrive in an owner-only log.

A mock webhook is a real HTTPS endpoint that returns a response you define. Instead of standing up a server, you publish a payload to a URL and point your app, a third-party service, or a curl command at it. It's ideal for testing a client, receiving a callback, or stubbing an API that isn't built yet.

  1. Sign in (a free account is enough to publish).
  2. Put your response payload in the editor — JSON, XML, YAML, whatever your caller expects.
  3. Click Publish in the toolbar. You get a public URL back immediately. On Pro or Team, the caret beside Publish optionally lets you choose a custom endpoint path.

Anyone with the URL can call it — fetching the slug is public on purpose, so real services can send it traffic. The response's Content-Type matches the format you published.

Toast notification reading 'Webhook published — URL copied' with the live endpoint URL, right after clicking Publish
Click Publish and the live URL is copied to your clipboard immediately — ready to paste into a client or curl command.

A fixed payload returns the same bytes every time. To return a fresh UUID, the current timestamp, a random value, or an echo of the incoming request, wrap a small expression in {{ … }} — see Return dynamic data from a mock API.

Each webhook has a private inspection portal, visible only to you. It logs every incoming request — method, headers, query string, and body — so you can confirm what your client actually sent. From the portal you can also set a canned response status code and clear the log.

Owner-only webhook portal showing the endpoint URL, a response status selector, response headers, and the JSON response payload editor
The owner-only portal: configure the response status and headers, edit the payload, and copy the URL — all in one place.
Recent requests panel showing one captured GET request, expanded into a 4-tab detail view: URL Params, Req Headers, Req Body, Response
Every request that hits your webhook shows up here — expand a row to see its params, headers, body, and the response you sent back.
  • Endpoints expire automatically after a set window (longer on paid plans) — mock URLs are meant to be temporary.
  • Paid plans can publish to a custom, memorable path instead of a random slug.
  • Decoding and inspection are owner-gated: only you can read the request log or change the response.

What is a mock API webhook?

A mock webhook is a real HTTPS endpoint that returns a response you define, without you running a server. You publish a payload to a URL and point your app, a third-party service, or a curl command at it — ideal for testing a client, receiving a callback, or stubbing an API that isn't built yet.

How do I create a free mock API endpoint?

Sign in (a free account is enough), put your response payload in the Yellorn editor, and click Publish in the toolbar. You get a public HTTPS URL back immediately. Pro and Team users can optionally open the caret beside Publish to choose a custom endpoint path. The response's Content-Type matches the format you published.

Can the mock API return dynamic data?

Yes. Wrap a small Python-flavoured expression in {{ }} anywhere in the payload — {{ uuid4() }}, {{ now() }}, {{ randint(1, 100) }}, or {{ request.ip }} — and it renders fresh on every request. See the dynamic mock API responses guide for the full token reference.

Can I see the requests my mock endpoint receives?

Yes. Each webhook has a private, owner-only inspection portal that logs every incoming request — method, headers, query string, and body — so you can confirm exactly what your client sent. You can also set a canned response status code and clear the log there.

How long does a mock endpoint stay active?

Endpoints expire automatically after a set window (longer on paid plans) because mock URLs are meant to be temporary. Paid plans can also publish to a custom, memorable path instead of a random slug.

Try a fix in the editor or browse more articles.