Market Data errors
Errors returned by the Market Data REST API. The Market Data, News v1 and Order Management APIs share this format. Other Openmarkets APIs do not: the back office APIs return a different envelope, and Account Opening returns an RFC 7807 problem document.
Error format
All error responses carry an appropriate HTTP status code and the following body:
{
"errorCode": "InvalidRequestParameters",
"message": "Bad request. Please review errors.",
"errors": [
{
"errorCode": "InvalidExchange",
"fieldName": "Exchange",
"fieldValue": null,
"message": "Exchange cannot be empty."
}
]
}
| Field | Description |
|---|---|
errorCode | Top-level error code. Identifies the type of top-level error. |
message | Human readable message describing the error. |
errors | Array of errors specific to invalid request parameters passed by the client. May be null. |
errors[].errorCode | Parameter-level error code. Identifies the type of parameter error. |
errors[].fieldName | The name of the field in the request. |
errors[].fieldValue | The value passed in the field by the client. |
errors[].message | Human readable message describing the error. |
Match on errorCode rather than message. Messages are written for humans and may change; codes are stable.
Top-level errors
| Status | Error code | Notes |
|---|---|---|
| 400 | RequestMissing | The entire request is missing and needs to be set by the client. |
| 400 | InvalidRequestParameters | The request contains invalid parameters. The offending parameters are listed in the errors array. |
| 403 | AccessDenied | Your client doesn't have access to this endpoint. Try calling DELETE /sessions/application/v1 and retrying; if it still fails, contact support. |
| 404 | EndpointNotFound | The endpoint called does not exist. |
| 429 | ApiCallsFrequencyExceeded | Requests exceeded the maximum allowed for the time period, for example 30 calls per second. Back off and retry with increasing delay. |
| 429 | ActiveApiCallsExceeded | Too many requests are in flight at once. Active requests are those that have not returned yet, including open update subscriptions. |
| 429 | MaxUpdatesQueuedExceeded | Too many updates queued since the last call. Poll the updates endpoint more often, or narrow the subscription so it returns fewer updates. |
| 500 | InternalServerError | An unhandled error occurred. If it persists after retrying, contact support with the request made. |
| 503 | ServiceUnavailable | A temporary error occurred. If it persists after retrying, contact support with the request made. |
Request tracking errors
Update subscriptions are correlated across calls by the X-Request-ID header. These parameter-level codes relate to that header.
| Error code | Notes |
|---|---|
InvalidRequestIds | The RequestIds parameter passed in the request is invalid. See message for more details. |
RequestAlreadyProcessed | The request ID used in the X-Request-ID header has already been processed by another request. |
RequestAlreadyInUse | The request ID used in the X-Request-ID header is already being used for a different updates subscription. |
RequestNotFound | The request ID used to retrieve updates could not be found. Restart the updates subscription flow. |
Parameter-level errors
Market and security selection
| Error code | Notes |
|---|---|
InvalidExchange | The Exchange parameter passed in the request is invalid. See message for more details. |
InvalidMarket | The Market parameter passed in the request is invalid. See message for more details. |
InvalidMarkets | The Markets parameter passed in the request is invalid. See message for more details. |
InvalidSecurity | The Security parameter passed in the request is invalid. See message for more details. |
InvalidSecurities | The Securities parameter passed in the request is invalid. See message for more details. |
InvalidSystemListName | The SystemListName parameter passed in the request is invalid. See message for more details. |
Date ranges
| Error code | Notes |
|---|---|
InvalidDateFrom | The DateFrom parameter passed in the request is invalid. See message for more details. |
InvalidDateTo | The DateTo parameter passed in the request is invalid. See message for more details. |
InvalidDateTimeFrom | The DateTimeFrom parameter passed in the request is invalid. See message for more details. |
InvalidDateTimeTo | The DateTimeTo parameter passed in the request is invalid. See message for more details. |
InvalidConsolidationInterval | The ConsolidationInterval parameter passed in the request is invalid. See message for more details. |
Data selection and depth
| Error code | Notes |
|---|---|
InvalidDataType | The DataType parameter passed in the request is invalid. See message for more details. |
InvalidDataTypes | The DataTypes parameter passed in the request is invalid. See message for more details. |
InvalidAskLevelMax | The AskLevelMax parameter passed in the request is invalid. See message for more details. |
InvalidBidLevelMax | The BidLevelMax parameter passed in the request is invalid. See message for more details. |
InvalidUpdates | The Updates header parameter passed in the request is invalid. See message for more details. |

