ByteTree API documentation

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

FieldTypeDescription
countnumberNumber of dimensions — five
dataarrayOne dimension object per row, in sortOrder

Each dimension object:

FieldTypeDescription
slugstringDimension key: region, country, sector, industry, or type. This is the value dimension parameters and path segments take
labelstringDisplay name (e.g. Region, Asset Type)
typestringHow 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)
sourceFieldstringAsset field the dimension reads (country, sector, industry, or type)
mappingobject | nullLookup table from source value to group label for mapped / derived dimensions (e.g. "GB": "Europe"); null for direct
editablebooleanWhether ByteTree curates the mapping. false on type, which is fixed
sortOrdernumberDisplay order
createdAt / updatedAtstringISO 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

NameTypeRequiredDescription
dimensionstringYesregion, country, sector, industry, or type

Response

FieldTypeDescription
dataobjectThe 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

StatusWhen
404Unknown 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.