Groups
Group History
GET /api/universes/:universe/:dimension/:group The day-by-day history of one group within a universe — for example, how the average trend score of the technology stocks in bytetrend has moved this year.
Example
One group's history
curl "https://api.bytetree.io/api/universes/bytetrend/region/North%20America?from=2026-01-01" \
-H "Authorization: Bearer YOUR_API_KEY" const res = await fetch("https://api.bytetree.io/api/universes/bytetrend/region/North%20America?from=2026-01-01", {
headers: { "Authorization": "Bearer YOUR_API_KEY" },
});
const body = await res.json(); import requests
res = requests.get(
"https://api.bytetree.io/api/universes/bytetrend/region/North%20America?from=2026-01-01",
headers={"Authorization": "Bearer YOUR_API_KEY"},
)
body = res.json()
Response
200 {
"dimension": "bytetrend/region",
"group": "North America",
"count": 208,
"data": [
{
"dimension": "bytetrend/region",
"group": "North America",
"date": "2026-01-02T00:00:00.000Z",
"assetCount": 735,
"avgByteTrendLocal200w": 3.1448,
"avgByteTrendLocal30d": 3.1117,
"avgByteTrendCapr200w": 1.8924,
"avgByteTrendCapr30d": 2.2003,
"totalMarketCapUsd": 66652526861828.875,
"byteTrendBins": {
"local200w": [94, 56, 111, 109, 100, 255],
"local30d": [69, 80, 112, 140, 105, 228],
"capr200w": [264, 105, 81, 102, 66, 107],
"capr30d": [168, 143, 110, 128, 57, 128]
},
"...": "..."
}
]
} More requests
Technology sector (ByteTrend)
curl "https://api.bytetree.io/api/universes/bytetrend/sector/Technology?from=2026-01-01" \
-H "Authorization: Bearer YOUR_API_KEY" Diversified banks (ByteTrend)
curl "https://api.bytetree.io/api/universes/bytetrend/industry/Banks%20-%20Diversified?from=2026-01-01" \
-H "Authorization: Bearer YOUR_API_KEY" Selective fields
curl "https://api.bytetree.io/api/universes/bytetrend/region/Europe?from=2026-01-01&fields=avgByteTrendLocal200w%2CavgReturnUsd1M" \
-H "Authorization: Bearer YOUR_API_KEY" Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
universe |
string |
Yes | Universe slug (e.g. bytetrend, bytefolio) — see Universes for the roster. Unknown slugs return 404; macro returns 400 (the macro dataset is at /api/macro). |
dimension |
string |
Yes | One of the five global dimensions: region, sector, industry, type, or country. Any other value returns 400 |
group |
string |
Yes | Group label (e.g. Europe, North America, Technology, Banks - Diversified). Labels with spaces or other reserved characters must be URL-encoded in the path (North%20America, Banks%20-%20Diversified) |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
from |
string |
No | Start date YYYY-MM-DD. Without from or to you get the group’s whole daily history, back to 2005 (several thousand rows), so set from when you only need recent data |
to |
string |
No | End date YYYY-MM-DD |
fields |
string |
No | Comma-separated list of metric fields to include |
Response
| Field | Type | Description |
|---|---|---|
dimension |
string |
The dimension slug |
group |
string |
The group label |
count |
number |
Number of date records |
data |
array |
Array of group metric objects sorted by date ascending (same schema as Universe Groups, including the per-variant byteTrendBins score histogram) |
Errors
As Universe Groups: unknown universe 404, macro 400, and a :dimension that isn’t one of the five 400. One group name is reserved: config on a valid universe returns 410, pointing to Dimensions, where the retired per-universe config route moved. A group name that doesn’t exist, or has nothing computed, returns 200 with count: 0 and an empty data array, not a 404. Check the group’s spelling against Dimension Groups if you get no rows. (Monitor History answers an unknown group with 404 instead.)