Skip to main content
POST
cURL
Use this endpoint to read the closing line of 1 to 25 markets in one request, for example every market a set of large trades touched. Each ok item holds exactly what Market closing line returns for that market. Check each result’s status, because individual markets can fail.

Parameters

An empty array, more than 25 ids, or a body field other than condition_ids fails the whole request with 400 before any market is read. A body over 1048576 bytes returns 413 with error.reason payload_too_large. A body sent without Content-Type: application/json returns 415 with error.reason unsupported_media_type.

Key response fields

Item budget

This route spends from the same batch item budget as the other batch routes: 2,500 units a minute per account on Pro, or 5,000 on Max, alongside the request allowance every authenticated route shares (100 requests a minute on Pro, 200 on Max). Going over returns 429 with a Retry-After, before any market is read.

Example

What it does not return

  • An ETag. This route has no conditional read; the single route has one.
  • Partial work after a bad request body. A 400 means no market was read at all.
  • 0 in place of a missing price. A market without a close says pending or unavailable with its unavailable_reason.
  • A different shape per item. An ok item holds exactly what the single route returns.

Authorizations

Authorization
string
header
required

Legacy default or named integration API key, or OAuth 2.1 access token, in the Authorization header as Bearer oxi_sk_live_... or Bearer oxi_at_.... Default keys retain full access; integration keys are limited to their approved read, webhooks, export and usage scopes and expire within 90 days. All credentials share the owner's account limits. Data calls require an active Pro subscription and return live data. A 401 carries WWW-Authenticate: Bearer resource_metadata="https://api.0xinsider.com/.well-known/oauth-protected-resource" (RFC 6750 section 3, RFC 9728).

Headers

X-Query-Validation
enum<string>

Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.

Available options:
strict

Body

application/json

Batch closing-line request. Supply 1-25 condition IDs.

condition_ids
string[]
required

Market condition IDs (raw or mkt_-prefixed) to resolve in input order.

Required array length: 1 - 25 elements

Response

Ordered batch closing-line results

object
string
required
Allowed value: "market_close_batch"
data
object[]
required
meta
object
required