Part 5 of 12 in the Oracle EPM Cloud REST API series.
Every response Oracle EPM Cloud sends back carries an HTTP status code: a three-digit number that tells you, at a glance, whether the request succeeded, failed, or is still being worked on. These follow standard HTTP conventions, so the same codes you would see from almost any web service apply here too.
| Code | Meaning | What it tells you |
|---|---|---|
| 200 | OK | The request completed successfully. Typical for GET calls and simple POSTs. |
| 201 | Created | A new resource was created. Check the Location header for its URL. |
| 202 | Accepted | The request was accepted but is still processing asynchronously. Check the Location header for a job resource to poll. |
| 400 | Bad Request | The request body or parameters were missing or invalid. |
| 401 | Unauthorized | Authentication failed or credentials are missing. |
| 403 | Forbidden | You are authenticated, but not authorized to perform this action. |
| 404 | Not Found | The URL points to a resource that does not exist, often a typo in an app or job name. |
| 405 | Method Not Allowed | You used a verb the endpoint does not support. |
| 406 and 415 | Not Acceptable, Unsupported Media Type | The Accept or Content Type header did not match what the server expects. |
| 500 | Internal Server Error | Something went wrong on Oracle's end. |
| 503 | Service Unavailable | The service is temporarily overloaded or down for maintenance. |
Two of these deserve extra attention once you start automating.
202 Accepted is a signal, not a finish line. It means Oracle has taken the request seriously and started working on it, not that the work is done. A well-built script watches for the Location header that comes back with a 202 and polls that URL rather than assuming success. This matters most for anything long running, like a sizable data import or a cube refresh.
The first digit tells you where the problem lives. Codes in the 400s mean something about your request needs fixing: a bad parameter, a missing header, an authentication issue. Codes in the 500s mean the problem sits on Oracle's side of the connection. That distinction shapes how a script should react. A 400 means stop and check your payload. A 500 or 503 might be worth a short retry, since the same request could succeed a minute later once the service recovers.
Build the habit of logging the status code alongside every response body your scripts capture, even when a call succeeds. When something eventually does go wrong three months from now, having a history of what codes a particular job normally returns makes the difference between spotting an anomaly immediately and re-tracing your steps from scratch.
Status codes tell you whether the request itself was accepted. They do not tell Oracle EPM Cloud who you are in the first place. That is the role of authentication, covered next.
