Every item value, price history and beequip roll of Bee Swarm Simulator as clean JSON. No key, no rate limit, CORS open to every origin. Built for price trackers, bots, fan sites and spreadsheets.
"65".Access-Control-Allow-Origin: * — fetch it from any website, any framework./api/v1/ never breaks, plus an OpenAPI 3.1 description.https://bss-index.vercel.app/api/v1
All responses are application/json and served with an open CORS policy. Cache-Control is handled by the CDN.
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/index.json |
Discovery document. Lists the API version, the origin, the item and category counts, every category, the demand/stability legends and the full endpoint catalogue. Start here. |
| GET | /api/v1/items.json |
Every item of the catalogue in the compact shape, sorted by value descending. One array, no pagination needed. |
| GET | /api/v1/items/{slug}.json |
Full record for a single item: the compact fields plus description, the dated price history, the beequip rolls and up to 10 related items. |
| GET | /api/v1/items/{slug}/history.json |
Price history of a single item as two parallel arrays (dates + prices) plus min/max/average and the 7d/30d changes. Only items with a recorded history have this file. |
| GET | /api/v1/categories.json |
Every category with its slug, English name, Russian name, item count and value statistics (min, max, average, total). |
| GET | /api/v1/categories/{slug}/items.json |
All items of one category in the same compact shape as /api/v1/items.json, sorted by value descending. |
| GET | /api/v1/search |
Server-side search. Matches the name in either language, the slug, and the community slang for each category (so a Russian query finds the right group too). Returns items ranked by relevance, then by value. |
| GET | /api/v1/changes.json |
Market movers: the 10 biggest gainers and the 10 biggest losers over the last 7 days, with their 30 day change. Items without enough history are skipped. |
| GET | /api/v1/stats.json |
Market summary: item count, total/average/median/min/max value and how many items carry a price history. |
| GET | /api/v1/search-index.json |
Small, lean index (slug, English and Russian names, English category, value) meant to be downloaded once and filtered client-side for instant search. No history, no colours. |
| GET | /api/v1/openapi.json |
OpenAPI 3.1 description of this API. Point your API client, Swagger UI or Redoc at it. |
| GET | /api/v1/docs.html |
Human readable API reference (this page). |
/api/v1/items/{slug}.jsonFull record for a single item: the compact fields plus description, the dated price history, the beequip rolls and up to 10 related items.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | yes | Item slug, e.g. "star-cub". See /api/v1/search-index.json for the full list. |
curl "https://bss-index.vercel.app/api/v1/items/star-cub.json"
/api/v1/items/{slug}/history.jsonPrice history of a single item as two parallel arrays (dates + prices) plus min/max/average and the 7d/30d changes. Only items with a recorded history have this file.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | yes | Item slug, e.g. "star-cub". |
curl "https://bss-index.vercel.app/api/v1/items/star-cub/history.json"
/api/v1/categories/{slug}/items.jsonAll items of one category in the same compact shape as /api/v1/items.json, sorted by value descending.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
slug | path | string | yes | Category slug, e.g. "bee-stickers". See /api/v1/categories.json for the full list. |
curl "https://bss-index.vercel.app/api/v1/categories/bee-stickers/items.json"
/api/v1/searchServer-side search. Matches the name in either language, the slug, and the community slang for each category (so a Russian query finds the right group too). Returns items ranked by relevance, then by value.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
q | path | string | yes | Search term, e.g. "bee", "star cub", "kub". |
category | path | string | yes | Filter by category slug, e.g. "vouchers", "cub-skins". |
sort | path | string | yes | relevance (default), value, value-asc, name, change. |
limit | path | integer | yes | Items per page, 1-100, default 25. |
offset | path | integer | yes | Offset for pagination, default 0. |
curl "https://bss-index.vercel.app/api/v1/search?q=bee&limit=10"
Copy-paste friendly. Every URL below returns JSON directly.
/api/v1/items.jsoncurl "https://bss-index.vercel.app/api/v1/items.json"
/api/v1/items/{slug}.jsoncurl "https://bss-index.vercel.app/api/v1/items/star-cub.json"
/api/v1/items/{slug}/history.jsoncurl "https://bss-index.vercel.app/api/v1/items/star-cub/history.json"
/api/v1/categories/{slug}/items.jsoncurl "https://bss-index.vercel.app/api/v1/categories/bee-stickers/items.json"
/api/v1/changes.jsoncurl "https://bss-index.vercel.app/api/v1/changes.json"
/api/v1/search-index.jsoncurl "https://bss-index.vercel.app/api/v1/search-index.json"
const items = await fetch('https://bss-index.vercel.app/api/v1/items.json').then(r => r.json());
const bee = await fetch('https://bss-index.vercel.app/api/v1/items/star-cub.json').then(r => r.json());
console.log(bee.value, bee.change7d, bee.rolls.length);
import requests
r = requests.get('https://bss-index.vercel.app/api/v1/items/star-cub.json').json()
print(r['name'], r['value'], r['change7d'])
The compact shape used by items.json and categories/<slug>/items.json. The per-item document adds description, historicalDates, historicalPrices, rolls and related.
The API is English-first: name and category always hold the English value, the Russian one lives in nameRu and categoryRu. nameRu is null when the item has no separate Russian name.
| Field | Type | Description |
|---|---|---|
slug | string | Identifier used by the website at /item/<slug>/. |
id | string | Stable internal id. |
name | string | English name of the item. |
nameRu | string | null | Russian name of the item, null when there is no separate Russian name. |
category | string | English category name, e.g. Cub Skins. |
categoryRu | string | Russian category name, e.g. Скины на каба. |
categorySlug | string | Slug of the English category name, e.g. cub-skins. |
value | number | Current value. |
valueLow / valueHigh | number | Accepted price range. |
demand | string | null | Demand label (see legend below). |
demandRu | string | null | Russian demand label, null when the item has none. |
stability | string | null | Price stability label (see legend below). |
stabilityRu | string | null | Russian stability label, null when the item has none. |
change7d / change30d | number | null | Percentage change over 7 / 30 days, null when the item has not enough history. |
image | string | Absolute image URL. |
url | string | Absolute URL of the item page. |
hasHistory | boolean | Whether a price history exists for the item. |
| value | Russian | Rank | Meaning |
|---|---|---|---|
Low | Низкий | 1 | Low demand — sells slowly and usually below the listed value. |
Average | Средний | 2 | Average demand — takes a while to sell at the listed value. |
High | Высокий | 3 | High demand — sells quickly, often above the listed value. |
Hype | Хайп | 4 | Hype — everybody wants it, prices move fast and hard. |
| value | Russian | Rank | Meaning |
|---|---|---|---|
Rising | Растет | 1 | The price is trending up over the recorded history. |
Stable | Стабильно | 2 | The price is holding steady. |
Falling | Падает | 3 | The price is trending down over the recorded history. |
| Slug | Name (English) | Name (Russian) | Items |
|---|---|---|---|
misc | Misc | Разное | 90 |
beequips | Beequips | Биквипы | 41 |
stamps | Stamps | Марки | 19 |
tools | Tools | Инструменты | 19 |
mob-stickers | Mob Stickers | Стикеры мобов | 18 |
bee-stickers | Bee Stickers | Стикеры пчел | 17 |
gems | Gems | Драгоценности | 16 |
bear-stickers | Bear Stickers | Стикеры медведей | 14 |
art | Art | Искусство | 12 |
cub-skins | Cub Skins | Скины на каба | 12 |
hive-skins | Hive Skins | Скины на улей | 12 |
star-signs | Star Signs | Звездные знаки | 12 |
beesmas-stickers | Beesmas Stickers | Стикеры Пчелождества | 11 |
leaves | Leaves | Листья | 11 |
mushrooms | Mushrooms | Грибы | 10 |
vouchers | Vouchers | Ваучеры | 6 |
flowers | Flowers | Цветы | 5 |
nectar-icons | Nectar Icons | Иконки нектара | 5 |
Price history is an irregular series of dated snapshots. change7d compares the newest snapshot with the price
interpolated at 7 days earlier, change30d does the same for 30 days. When the recorded series does not reach
that far back, the change is null — never a guess. Percentages are rounded to one decimal.
Items without a usable change are skipped in changes.json.
Full machine readable description: https://bss-index.vercel.app/api/v1/openapi.json — point Swagger UI, Redoc, Postman or your own codegen at it.