GET /api/dimensions Dimensions
Every asset is classified five ways — by region, country, sector, industry and asset type. These five are the dimensions, and each value within one (Europe, Technology) is a group. This endpoint describes the five and how assets are sorted into them.
The dimensions — region, sector, industry, type, country — are global: every asset resolves to one group in each, and the same mapping applies whichever universe you query.
Each dimension resolves from one asset field. type is ByteTree’s own asset classification (stock, etf, crypto, commodity, index) and is fixed; region is derived from country; sector, industry and country start from provider-native values and may carry a per-asset override. The resolved value of each dimension sits top-level on the asset record, with the raw and override layers under dimensions — see Get Asset.
List Dimensions
curl https://api.bytetree.io/api/dimensions
This endpoint takes no query parameters other than format; any other parameter returns 400.
Response
| Field | Type | Description |
|---|---|---|
count | number | Number of dimensions — five |
data | array | One dimension object per row, in sortOrder |
Each dimension object:
| Field | Type | Description |
|---|---|---|
slug | string | Dimension key: region, country, sector, industry, or type. This is the value dimension parameters and path segments take |
label | string | Display name (e.g. Region, Asset Type) |
type | string | How the group is resolved: direct (the asset field’s value is the group), mapped (the field’s value is looked up in mapping), or derived (computed from another field via mapping) |
sourceField | string | Asset field the dimension reads (country, sector, industry, or type) |
mapping | object | null | Lookup table from source value to group label for mapped / derived dimensions (e.g. "GB": "Europe"); null for direct |
editable | boolean | Whether ByteTree curates the mapping. false on type, which is fixed |
sortOrder | number | Display order |
createdAt / updatedAt | string | ISO timestamps |
{
"count": 5,
"data": [
{
"slug": "region",
"label": "Region",
"type": "derived",
"sourceField": "country",
"mapping": { "US": "North America", "CA": "North America", "GB": "Europe", "CH": "Europe", "...": "..." },
"editable": true,
"sortOrder": 0,
"createdAt": "2026-09-09T07:42:05.959Z",
"updatedAt": "2026-09-09T07:42:05.959Z"
},
{
"slug": "sector",
"label": "Sector",
"type": "direct",
"sourceField": "sector",
"mapping": null,
"editable": true,
"sortOrder": 2,
"createdAt": "2026-09-09T07:42:06.176Z",
"updatedAt": "2026-09-09T07:42:06.176Z"
},
{
"slug": "type",
"label": "Asset Type",
"type": "direct",
"sourceField": "type",
"mapping": null,
"editable": false,
"sortOrder": 4,
"createdAt": "2026-09-09T07:42:06.256Z",
"updatedAt": "2026-09-09T07:42:06.256Z"
}
]
}
Get Dimension
curl https://api.bytetree.io/api/dimensions/region
Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
dimension | string | Yes | region, country, sector, industry, or type |
Response
| Field | Type | Description |
|---|---|---|
data | object | The dimension object, same fields as a List Dimensions row |
{
"data": {
"slug": "region",
"label": "Region",
"type": "derived",
"sourceField": "country",
"mapping": { "US": "North America", "CA": "North America", "GB": "Europe", "CH": "Europe", "...": "..." },
"editable": true,
"sortOrder": 0,
"createdAt": "2026-09-09T07:42:05.959Z",
"updatedAt": "2026-09-09T07:42:05.959Z"
}
}
Errors
| Status | When |
|---|---|
404 | Unknown dimension slug |
Filtering by dimension
dimension + group work together on /api/assets, /api/metrics/distribution and /api/metrics/regime-transitions as a global filter, with or without universe. Pass both or neither — one without the other is a 400, as is an unknown dimension.
# Technology-sector members of the ByteTrend universe
curl "https://api.bytetree.io/api/assets?universe=bytetrend&dimension=sector&group=Technology"
# Every tracked European asset, no universe
curl "https://api.bytetree.io/api/assets?dimension=region&group=Europe"
Group-level metrics per dimension are served by the Macro Dataset and Universe Groups routes.