HTTP 410 Gone

The resource existed and has been permanently removed. Unlike a 404, the server is stating that it will not come back.

Defined in RFC 9110 §15.5.11 — 410 Gone · MDN reference

Where you meet HTTP 410 in production

Retired API versions, expired share links, records removed at a user's request, and endpoints deliberately sunset after a deprecation window — anywhere the absence is a decision rather than an accident.

Why you would test it

Most clients collapse 410 into 404 and keep retrying a URL that will never work again. Test it separately and stop retrying.

What your client should do about a 410

Stop asking. A 410 is the server saying the URL will not come back, which means the right client behaviour is to remove it from whatever list keeps producing it — not to retry on a schedule.

410 versus the codes it gets confused with

Endpoints that return 410

8 endpoints in this playground answer with 410. Every one is free, needs no signup, and can be called from the browser or with curl.

Questions about HTTP 410

Do I have to use 410 instead of 404?
No, 404 is always acceptable. 410 is more informative when you know the removal is permanent.
Is 410 good for deprecating an API version?
Yes, after a deprecation window in which the endpoint still works and announces its end date.

Other client error codes

All HTTP status codes · All 39 mock REST APIs · Getting started guide

Last updated