Data¶
Corporate Actions¶
GET /data/corporate-actions/{identifier}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifier |
path | string | yes | |
start |
query | string or null | no | Inclusive start date, YYYY-MM-DD. |
end |
query | string or null | no | Inclusive end date, YYYY-MM-DD. |
types |
query | array of string or null | no | Restrict to these action types, e.g. DIVIDEND, SPLIT. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | CorporateActionsResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Features Batch¶
GET /data/features
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifiers |
query | array of string | yes | Identifiers to look up. Repeat the parameter or comma-separate; at most 1000 per call. |
date |
query | string or null | no | Point-in-time date, YYYY-MM-DD. Returns only rows valid then. |
fields |
query | array of string or null | no | Reference columns to return, plus derived fields such as adv_3m. All stored columns and no derived field by default. |
type |
query | string or null | no | Restrict to one feature dataset. Omitted searches every one, which picks arbitrarily between two carrying the same field name. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | FeatureBatchResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Import Features¶
POST /data/features
Request body: FeatureImport
Responses
| Status | Meaning | Body |
|---|---|---|
| 201 | Successful Response | FeatureImportResult |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Feature Catalogue¶
GET /data/features/catalogue
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | FeatureCatalogue |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Features For¶
GET /data/features/{identifier}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifier |
path | string | yes | |
date |
query | string or null | no | Point-in-time date, YYYY-MM-DD. Returns only rows valid then. |
fields |
query | array of string or null | no | Reference columns to return, plus derived fields such as adv_3m. All stored columns and no derived field by default. |
type |
query | string or null | no | Restrict to one feature dataset. Omitted searches every one, which picks arbitrarily between two carrying the same field name. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | FeatureResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Field Catalogue¶
GET /data/fields
Every datapoint an expression can name.
The features half already has its own catalogue; this adds the market and reference side so a client builds one field picker rather than one per dataset. Read from the loaded store rather than from the declaration, so a column nobody declared appears too.
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | FieldCatalogue |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Identifiers¶
GET /data/identifiers
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
q |
query | string or null | no | Fragment to match against identifier and name. Absent or empty enumerates instead of searching. |
limit |
query | integer | no | Maximum rows, at most 1000. |
offset |
query | integer | no | Rows to skip, for walking an enumeration. |
datasets |
query | array of string or null | no | Only return identifiers covered by all of these, e.g. 'market'. Comma-separated or repeated. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | IdentifierSearchResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Prices¶
GET /data/prices/{identifier}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifier |
path | string | yes | |
start |
query | string or null | no | Inclusive start date, YYYY-MM-DD. |
end |
query | string or null | no | Inclusive end date, YYYY-MM-DD. |
interval |
query | string | no | native, weekly or monthly. |
columns |
query | array of string or null | no | Market-data columns to return; all by default. |
adjusted |
query | boolean | no | Add an ADJ_CLOSE column: CLOSE back-adjusted for splits and dividends, so the last value equals the last raw close and history is scaled. An adjusted series answers what a holder would have made and is no longer a price. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | PricesResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Reference Batch¶
GET /data/reference
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifiers |
query | array of string | yes | Identifiers to look up. Repeat the parameter or comma-separate; at most 1000 per call. |
date |
query | string or null | no | Point-in-time date, YYYY-MM-DD. Returns only rows valid then. |
fields |
query | array of string or null | no | Reference columns to return, plus derived fields such as adv_3m. All stored columns and no derived field by default. |
currency |
query | string or null | no | ISO code the converted money fields (market_cap, free_float_market_cap) are converted into, e.g. EUR — name the index's currency to compare caps against its weights. USD by default. The unconverted figures come back in market_cap_local and free_float_market_cap_local regardless. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | BatchReferenceResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Reference¶
GET /data/reference/{identifier}
One instrument's reference record, stored and derived.
fields and currency are honoured on the same terms as the batch
form: a parameter one of the two accepts and the other ignores is the
drift BN-149 closed here once already. Before it, fields was
accepted and ignored, so market_cap came back empty from here and
populated from /data/reference -- a parameter that looks supported
while doing nothing, which is the failure a client cannot diagnose.
Universe memberships are answered here and not there: they were not answerable when this endpoint was written, because no universe could be created through the API and none was seeded, so the answer was always "none". BN-132 changed that.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
identifier |
path | string | yes | |
date |
query | string or null | no | Point-in-time date, YYYY-MM-DD. Returns only rows valid then. |
fields |
query | array of string or null | no | Reference columns to return, plus derived fields such as adv_3m. All stored columns and no derived field by default. |
currency |
query | string or null | no | ISO code the converted money fields (market_cap, free_float_market_cap) are converted into, e.g. EUR — name the index's currency to compare caps against its weights. USD by default. The unconverted figures come back in market_cap_local and free_float_market_cap_local regardless. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | ReferenceResponse |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.
Table Page¶
GET /data/tables/{dataset}
One page of a stored dataset, optionally narrowed to some names.
identifiers is the only filter, and it exists because one
instrument's history -- its feature rows, its actions -- was
otherwise reachable only by paging the whole table and filtering
client-side, which is 964k rows to find a few dozen (BN-150).
Still no sorting or predicate parameters. A client needing those wants a query language, and this is the wrong place to grow one -- the per-identifier endpoints and the expression API cover the rest.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
dataset |
path | string | yes | |
offset |
query | integer | no | Rows to skip, for walking an enumeration. |
limit |
query | integer | no | Maximum rows, at most 1000. |
identifiers |
query | array of string or null | no | Identifiers to look up. Repeat the parameter or comma-separate; at most 1000 per call. |
Responses
| Status | Meaning | Body |
|---|---|---|
| 200 | Successful Response | TablePage |
Also the shared errors: 400, 401, 404, 405, 422, 500, 501, 503.