Datasets API endpoint
Returns one Box Office Mojo dataset record by title id (IMDb `tt…` id used on Box Office Mojo title pages), including lifetime grosses, year history, release groups and market grosses when hydrated.
/datasets/boxofficemojo/items/{title_id}Path parameters:
title_id: required. Title id such as tt0499549.Notable response behavior: unknown or invalid ids return a typed not-found or invalid-params error. Gross amounts are whole USD dollars (no cents).
| Field | In the sample | Value in the sample |
|---|---|---|
| title_id | Has a value | |
| title | Has a value | |
| title_path | Has a value | |
| title_url | Has a value | boxofficemojo.com |
| lifetime_gross_worldwide | Has a value | 2,923,710,708 |
| lifetime_gross_domestic | Has a value | 785,221,649 |
| lifetime_rank_worldwide | Has a value | 1 |
| lifetime_rank_domestic | Has a value | 5 |
| lifetime_year | Has a value | 2,009 |
| in_lifetime_top_1000_ww | Has a value | true |
| in_lifetime_top_1000_dom | Has a value | true |
| primary_release_group_id | Has a value | |
| primary_release_group_name | Has a value | |
| release_group_ids | Has a value | |
| release_group_count | Has a value | 6 |
| market_count | Has a value | 78 |
| release_groups | Has a value | 6 entries |
| market_grosses | Has a value | 5 entries |
| domestic_share | Has a value | 0.27 |
| foreign_share | Has a value | 0.73 |
| gross_band | Has a value | |
| is_billion_dollar | Has a value | true |
| franchise_ids | Has a value | |
| franchise_names | Has a value | 1 entry |
| brand_ids | Has a value | |
| brand_names | Has a value | 1 entry |
| genre_ids | Has a value | |
| genre_names | Has a value | 7 entries |
| years_active | Has a value | 3 entries |
| hydrated | Has a value | true |
| sources | Has a value | 8 entries |
| first_seen_at | Has a value | 2026-07-19 |
| last_crawled_at | Has a value | 2026-09-30 |
| last_hydrated_at | Has a value | 2026-07-21 |
| schema_version | Has a value |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| title_id (path) | string | Yes | Title id (IMDb tt… id), e.g. tt0499549 | tt0499549 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/datasets/boxofficemojo/items/tt0499549" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"title_id": "tt0499549",
"title": "Avatar",
"lifetime_gross_worldwide": 2923710708,
"lifetime_rank_worldwide": 1,
"gross_band": "over_1b",
"is_billion_dollar": true,
"hydrated": true,
"release_group_count": 6,
"year_grosses": [
{
"year": 2009,
"worldwide": 2743577587
}
]
}
}Request schema
No body schema
Response schema
#/definitions/datasets.boxOfficeMojoItemResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | es.BoxOfficeMojoTitleRecord | No | ||||
| data.brand_ids | array | No | ||||
| data.brand_names | array | No | ||||
| data.domestic_share | number | No | ||||
| data.first_seen_at | string | No | ||||
| data.foreign_share | number | No | ||||
| data.franchise_ids | array | No | ||||
| data.franchise_names | array | No | ||||
| data.genre_ids | array | No | ||||
| data.genre_names | array | No | ||||
| data.gross_band | string | No | ||||
| data.hydrate_attempts | integer | No | ||||
| data.hydrate_failed | boolean | No | ||||
| data.hydrated | boolean | No | ||||
| data.in_lifetime_top_1000_dom | boolean | No | ||||
| data.in_lifetime_top_1000_ww | boolean | No | ||||
| data.is_billion_dollar | boolean | No | ||||
| data.last_crawled_at | string | No | ||||
| data.last_hydrated_at | string | No | ||||
| data.lifetime_gross_domestic | integer | No | ||||
| data.lifetime_gross_worldwide | integer | No | ||||
| data.lifetime_rank_domestic | integer | No | ||||
| data.lifetime_rank_worldwide | integer | No | ||||
| data.lifetime_year | integer | No | ||||
| data.market_count | integer | No | ||||
| data.market_grosses | array | No | MarketGrosses keeps the hydrated region/market tables as opaque objects so the mapping stays flexible; the public query surface can expand later. | |||
| data.peak_worldwide_gross | integer | No | ||||
| data.peak_worldwide_year | integer | No | ||||
| data.primary_release_group_id | string | No | ||||
| data.primary_release_group_name | string | No | ||||
| data.release_group_count | integer | No | ||||
| data.release_group_ids | array | No | ||||
| data.release_groups | array | No | ||||
| data.release_groups[].domestic | integer | No | ||||
| data.release_groups[].international | integer | No | ||||
| data.release_groups[].markets | string | No | ||||
| data.release_groups[].name | string | No | ||||
| data.release_groups[].path | string | No | ||||
| data.release_groups[].rollout | string | No | ||||
| data.release_groups[].url | string | No | ||||
| data.release_groups[].worldwide | integer | No | ||||
| data.schema_version | integer | No | ||||
| data.sources | array | No | ||||
| data.title | string | No | ||||
| data.title_id | string | No | ||||
| data.title_path | string | No | ||||
| data.title_url | string | No | ||||
| data.year_grosses | array | No | ||||
| data.year_grosses[].domestic | integer | No | ||||
| data.year_grosses[].domestic_share | number | No | ||||
| data.year_grosses[].foreign | integer | No | ||||
| data.year_grosses[].foreign_share | number | No | ||||
| data.year_grosses[].rank_worldwide | integer | No | ||||
| data.year_grosses[].release_group_id | string | No | ||||
| data.year_grosses[].release_group_name | string | No | ||||
| data.year_grosses[].worldwide | integer | No | ||||
| data.year_grosses[].year | integer | No | ||||
| data.years_active | array | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/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/boxofficemojo/items/tt0499549" \
-H "x-api-key: $CRAWLORA_API_KEY"