← all 71 tracked mock & placeholder APIs

Is JSONPlaceholder down?

UP right now — answered HTTP 200 in 13 ms.

Last checked 2026-09-11T21:00:43Z · checked every hour · OK-rate 24h: 100% · 7d: 100% · raw JSON · Atom feed of its down/recovered events

Context: Fixed dataset; writes are faked (POST answers 201 but nothing persists).

What we check: GET https://jsonplaceholder.typicode.com/posts/1 — 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.

Need a fake-data REST API that answers?

If jsonplaceholder.typicode.com is failing (or you're tired of finding out mid-demo), Mockbird gives you a seeded fake-data REST API that answers right now — and unlike the classics, writes actually persist — free, no signup:

curl https://mockbird.mockbird.workers.dev/m/demo/products/1

Read the honest JSONPlaceholder migration guide → (it also says when JSONPlaceholder is the better tool) or create your own mock API in one click.

README badge

Does your project's test suite or tutorial depend on jsonplaceholder.typicode.com? Embed a live status badge — it re-renders from our latest check (cached 5 min):

jsonplaceholder.typicode.com status badge

<!-- Markdown -->
[![jsonplaceholder.typicode.com status](https://mockbird.mockbird.workers.dev/status/jsonplaceholder/badge.svg)](https://mockbird.mockbird.workers.dev/status/jsonplaceholder)

<!-- HTML -->
<a href="https://mockbird.mockbird.workers.dev/status/jsonplaceholder"><img src="https://mockbird.mockbird.workers.dev/status/jsonplaceholder/badge.svg" alt="jsonplaceholder.typicode.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 71.

Get pinged when it goes down

Subscribe any webhook URL — no account needed. One message when jsonplaceholder.typicode.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": "jsonplaceholder", "url": "https://hooks.slack.com/services/T000/B000/XXXX"}'

Use "service": "*" to watch all 71 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 →

Recent checks

Checked at (UTC)ResultTime
2026-09-11T21:00:43ZOK 20013 ms
2026-09-11T21:00:21ZOK 20053 ms
2026-09-11T20:00:44ZOK 20012 ms
2026-09-11T20:00:21ZOK 20080 ms
2026-09-11T19:00:21ZOK 20045 ms
2026-09-11T19:00:13ZOK 20011 ms
2026-09-11T18:00:26ZOK 20014 ms
2026-09-11T17:00:31ZOK 20035 ms
2026-09-11T16:00:23ZOK 20015 ms
2026-09-11T15:13:31ZOK 200428 ms
2026-09-11T14:00:56ZOK 20025 ms
2026-09-11T12:00:45ZOK 20018 ms
2026-09-11T11:00:45ZOK 20073 ms
2026-09-11T10:00:45ZOK 20010 ms
2026-09-11T09:00:45ZOK 2009 ms
2026-09-11T08:00:45ZOK 20026 ms
2026-09-11T07:00:45ZOK 20019 ms
2026-09-11T06:01:08ZOK 20011 ms
2026-09-11T05:01:07ZOK 20011 ms
2026-09-11T04:01:10ZOK 20021 ms
2026-09-11T03:01:09ZOK 20010 ms
2026-09-11T02:01:04ZOK 20010 ms
2026-09-11T01:01:06ZOK 20014 ms
2026-09-11T00:01:08ZOK 20010 ms
2026-09-10T23:01:07ZOK 20012 ms
2026-09-10T22:01:06ZOK 20023 ms
2026-09-10T21:00:25ZOK 20012 ms
2026-09-10T20:00:27ZOK 20014 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.