HTTP 203 — Non-Authoritative Information
HTTP 203 reports a successful request where the payload came from a copy rather than the origin — a cache or proxy answered with metadata that may not match the origin server byte for byte.
When 203 shows up
- Intermediary caches returning stored copies annotated with their own metadata.
- Aggregating proxies that transform payloads before forwarding them.
Mocking a 203 response
A response with this status can be faked end to end with a local mock rule — no backend changes needed. The configuration below mirrors the rule fields the ApiSimul editor uses (method, path, status, delay in milliseconds, response body):
{
"method": "GET",
"path": "/api/proxy/profile",
"status": 203,
"delay": 180,
"enabled": true,
"body": {
"source": "cache",
"data": { "id": "{{param.id}}", "name": "{{random.name}}" }
}
}Dynamic placeholders such as {{random.name}}, {{string.uuid}} or {{number.int 1 100}} can appear inside the body to vary each response, which keeps client-side list rendering and retry logic honest during development.
Frequently asked questions
What does HTTP 203 mean?
The request succeeded but the metadata describes a local or transformed copy, not the authoritative origin response.
How can I test a 203 response without a real backend?
Define a mock rule with the method and path your client requests and set the status to 203. The example configuration above returns this response after the listed delay, so the client exercises its 203 handling exactly as it would against a live server.
Related status codes
Need the response in your own project? Spin up rules for any status with the ApiSimul mock server, or browse every status code page.