Datasets API endpoint
Returns terms aggregation counts for the Steam games dataset. Facet enum: `type`, `developer`, `publisher`, `genres`, `categories`, `tags`, `primary_tag`, `price_tier`, `review_tier`, `owners_bucket`, `release_year`, `run_id`, `is_free`, `coming_soon`, `platform_windows`, `platform_mac`, `platform_linux`. price_tier enum: `free`, `under5`, `5to15`, `15to30`, `30to60`, `over60`. review_tier enum: `overwhelmingly_positive`, `very_positive`, `positive`, `mostly_positive`, `mixed`, `mostly_negative`, `negative`, `very_negative`, `overwhelmingly_negative`, `insufficient`.
/datasets/steam-games/facetsReturns terms aggregation counts over the Steam games dataset, honoring the same filters as search.
Dataset id enum:
steam-gamesQuery parameters:
facet: required facet to aggregate. Allowed values: type, developer, publisher, genres, categories, tags, primary_tag, price_tier, review_tier, owners_bucket, release_year, run_id, is_free, coming_soon, platform_windows, platform_mac, platform_linux. (tags = the weighted community-tag taxonomy; primary_tag = each title's top-weighted tag.)q: optional full-text query over name, developer and publisher, max 256 characters.type: optional exact storefront type filter, max 128 characters.developer: optional exact developer filter, max 128 characters.publisher: optional exact publisher filter, max 128 characters.genre: optional exact genre filter, max 128 characters.category: optional exact store category filter, max 128 characters.tag: optional exact community-tag filter (e.g. Roguelike, Cozy), max 128 characters.price_tier: optional price-tier enum: free, under5, 5to15, 15to30, 30to60, over60.review_tier: optional review-tier enum: overwhelmingly_positive, very_positive, positive, mostly_positive, mixed, mostly_negative, negative, very_negative, overwhelmingly_negative, insufficient.owners_bucket: optional exact SteamSpy owners-range bucket filter, max 128 characters.run_id: optional exact crawl run-id filter, max 128 characters.is_free: optional free-to-play filter.windows: optional Windows-support filter.mac: optional macOS-support filter.linux: optional Linux-support filter.on_sale: optional filter for titles currently discounted.min_price_cents: optional minimum current price in cents.max_price_cents: optional maximum current price in cents.min_owners: optional minimum estimated owners (SteamSpy owners midpoint).min_positive: optional minimum positive review count.min_total_reviews: optional minimum total review count.min_review_score: optional minimum positive-review ratio, 0 through 1.min_metacritic: optional minimum Metacritic score, 0 through 100.min_ccu: optional minimum peak concurrent users yesterday.min_release_year: optional minimum release year.max_release_year: optional maximum release year.Response behavior:
50 buckets ordered by descending count.facet is required; unsupported values return the standard invalid params envelope.is_free, coming_soon, platform_windows, platform_mac, platform_linux) return true/false bucket values.items array (not an error) when the dataset has no data yet.| Field | Filled in, of 33 checked | Values in the sample |
|---|---|---|
| value | 33 | |
| count | 33 | 19 to 186,041, median 2,248 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| facet | string | Yes | Facet enum: type, developer, publisher, genres, categories, tags, primary_tag, price_tier, review_tier, owners_bucket, release_year, run_id, is_free, coming_soon, platform_windows, platform_mac, platform_linux Allowed values: type, developer, publisher, genres, categories, tags, primary_tag, price_tier, review_tier, owners_bucket, release_year, run_id, is_free, coming_soon, platform_windows, platform_mac, platform_linux. | type | |
| q | string | No | Full-text query over name, developer and publisher, max 256 characters | ||
| type | string | No | Exact storefront type filter, max 128 characters | ||
| developer | string | No | Exact developer filter, max 128 characters | ||
| publisher | string | No | Exact publisher filter, max 128 characters | ||
| genre | string | No | Exact genre filter, max 128 characters | ||
| category | string | No | Exact store category filter, max 128 characters | ||
| tag | string | No | Exact community-tag filter (e.g. Roguelike, Cozy), max 128 characters | ||
| price_tier | string | No | Price-tier enum: free, under5, 5to15, 15to30, 30to60, over60 Allowed values: free, under5, 5to15, 15to30, 30to60, over60. | ||
| review_tier | string | No | Review-tier enum: overwhelmingly_positive, very_positive, positive, mostly_positive, mixed, mostly_negative, negative, very_negative, overwhelmingly_negative, insufficient Allowed values: overwhelmingly_positive, very_positive, positive, mostly_positive, mixed, mostly_negative, negative, very_negative, overwhelmingly_negative, insufficient. | ||
| owners_bucket | string | No | Exact SteamSpy owners-range bucket filter, max 128 characters | ||
| run_id | string | No | Exact crawl run-id filter, max 128 characters | ||
| is_free | boolean | No | Filter by free-to-play flag | ||
| windows | boolean | No | Filter by Windows support | ||
| mac | boolean | No | Filter by macOS support | ||
| linux | boolean | No | Filter by Linux support | ||
| on_sale | boolean | No | Filter by titles currently discounted (discount_pct > 0) | ||
| min_price_cents | integer | No | Minimum current price in cents | ||
| max_price_cents | integer | No | Maximum current price in cents | ||
| min_owners | integer | No | Minimum estimated owners (SteamSpy owners midpoint) | ||
| min_positive | integer | No | Minimum positive review count | ||
| min_total_reviews | integer | No | Minimum total review count | ||
| min_review_score | number | No | Minimum positive-review ratio, 0 through 1 | ||
| min_metacritic | integer | No | Minimum Metacritic score, 0 through 100 | ||
| min_ccu | integer | No | Minimum peak concurrent users yesterday | ||
| min_release_year | integer | No | Minimum release year | ||
| max_release_year | integer | No | Maximum release year | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/datasets/steam-games/facets?facet=type&q=coffee&price_tier=free&review_tier=overwhelmingly_positive&is_free=true&windows=true&mac=true&linux=true&on_sale=true" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"dataset": "steam-games",
"facet": "genres",
"items": [
{
"value": "Indie",
"count": 4210
},
{
"value": "Action",
"count": 3175
},
{
"value": "Adventure",
"count": 2610
}
]
}
}Request schema
No body schema
Response schema
#/definitions/datasets.steamGamesFacetResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | datasets.SteamFacetResponse | No | ||||
| data.dataset | string | No | ||||
| data.facet | string | No | ||||
| data.items | array | No | ||||
| data.items[].count | integer | No | ||||
| data.items[].value | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/datasets/steam-games/facets?facet=type&q=coffee&price_tier=free&review_tier=overwhelmingly_positive&is_free=true&windows=true&mac=true&linux=true&on_sale=true" \
-H "x-api-key: $CRAWLORA_API_KEY"