← all 90 tracked mock & placeholder APIs
UP right now — answered HTTP 200 in 46 ms.
Last checked 2026-09-26T01:00:50Z · checked every hour (a timeout/TLS/DNS blip on an otherwise-up service is confirmed with a same-run retry before it counts) · OK-rate 24h: 100% · 7d: 98.8% · raw JSON · Atom feed of its down/recovered events
Context: The drinks API behind nearly every cocktail-app tutorial (TheMealDB's sibling) — alive and well-run. Known traps: no-match responses come in three shapes and none is an empty array (search misses answer {"drinks":null}, filter misses answer the string "no data found", so .map() throws either way), the test key's filter-by-ingredient returns exactly ONE drink (as do popular.php/latest.php/randomselection.php — Premium endpoints), the key "1" is dev-only (app-store release requires the Premium key), and the free tier is read-only with listings capped at 100. We probe a fixed drink id.
What we check: GET https://www.thecocktaildb.com/api/json/v1/1/lookup.php?i=11007 — a plain, keyless request from Cloudflare's network with an honest bot UA, exactly what a tutorial curl or an <img> tag experiences. OK = HTTP 2xx/3xx within 8s. No retries, no cookies, no API keys.
If www.thecocktaildb.com is failing (or you're tired of finding out mid-demo), Mockbird gives you a seeded, persistent REST API for your tutorial or side project — pick a preset (ecommerce/blog/saas) or import any JSON/CSV as your own dataset; writes persist, CORS on, no signup — free, no signup:
curl https://mockbird.mockbird.workers.dev/m/demo/products/1
# create your own in one click (no terminal): https://mockbird.mockbird.workers.dev/app#new=ecommerce
Read the honest TheCocktailDB (thecocktaildb.com) migration guide → (it also says when TheCocktailDB (thecocktaildb.com) is the better tool) or create your own mock API in one click.
Does your project's test suite or tutorial depend on www.thecocktaildb.com? Embed a live status badge — it re-renders from our latest check (cached 5 min):
<!-- Markdown -->
[](https://mockbird.mockbird.workers.dev/status/thecocktaildb)
<!-- HTML -->
<a href="https://mockbird.mockbird.workers.dev/status/thecocktaildb"><img src="https://mockbird.mockbird.workers.dev/status/thecocktaildb/badge.svg" alt="www.thecocktaildb.com status"></a>
Green = answering plain GETs, red = network-dead, amber = answering but with an error status. Every tracked service has one; there's also a summary badge for all 90.
Subscribe any webhook URL — no account needed. One message when www.thecocktaildb.com goes down, one when it recovers (debounced: two consecutive hourly checks must agree, so a single blip never fires). Slack and Discord incoming-webhook URLs get a formatted message; anything else gets an HMAC-signed JSON POST.
Or from a terminal / CI script:
curl -X POST https://mockbird.mockbird.workers.dev/api/status/watch \
-H "content-type: application/json" \
-d '{"service": "thecocktaildb", "url": "https://hooks.slack.com/services/T000/B000/XXXX"}'
Use "service": "*" to watch all 90 tracked services at once. The response includes an unsubscribe curl; 5 consecutive failed deliveries auto-unsubscribe. No webhook? Omit "url" to get a pollable subscription instead — GET the returned poll URL anytime for the transitions since your last poll. Full API details →
The same checker can watch your own URL: POST /api/status/monitor {"url": "https://api.example.com/health", "notify": "<webhook>"} — every 30 minutes, alert on down + recovery, free, no account. Monitor API →
| Checked at (UTC) | Result | Time |
|---|---|---|
| 2026-09-26T01:00:50Z | OK 200 | 46 ms |
| 2026-09-26T00:00:52Z | OK 200 | 47 ms |
| 2026-09-25T23:00:52Z | OK 200 | 55 ms |
| 2026-09-25T22:00:52Z | OK 200 | 52 ms |
| 2026-09-25T21:01:07Z | OK 200 | 65 ms |
| 2026-09-25T20:00:58Z | OK 200 | 64 ms |
| 2026-09-25T19:01:18Z | OK 200 | 83 ms |
| 2026-09-25T18:01:14Z | OK 200 | 72 ms |
| 2026-09-25T17:01:12Z | OK 200 | 68 ms |
| 2026-09-25T16:01:05Z | OK 200 | 78 ms |
| 2026-09-25T15:01:10Z | OK 200 | 73 ms |
| 2026-09-25T14:01:24Z | OK 200 | 74 ms |
| 2026-09-25T13:01:17Z | OK 200 | 66 ms |
| 2026-09-25T12:01:08Z | OK 200 | 60 ms |
| 2026-09-25T11:01:18Z | OK 200 | 61 ms |
| 2026-09-25T10:01:02Z | OK 200 | 59 ms |
| 2026-09-25T09:00:56Z | OK 200 | 59 ms |
| 2026-09-25T08:01:14Z | OK 200 | 103 ms |
| 2026-09-25T07:01:06Z | OK 200 | 113 ms |
| 2026-09-25T06:01:09Z | OK 200 | 54 ms |
| 2026-09-25T05:00:50Z | OK 200 | 43 ms |
| 2026-09-25T04:00:47Z | OK 200 | 49 ms |
| 2026-09-25T03:00:57Z | OK 200 | 44 ms |
| 2026-09-25T02:00:53Z | OK 200 | 119 ms |
| 2026-09-25T01:00:49Z | OK 200 | 41 ms |
| 2026-09-25T00:00:52Z | OK 200 | 50 ms |
| 2026-09-24T23:00:58Z | OK 200 | 43 ms |
Bias disclosure: this page is run by Mockbird, a free hosted mock-API service. The status data is real and logged verbatim (pull it yourself), and the linked guides say when the incumbent wins.