BBC News Search
BBC News Search is used to fetch BBC search results by keyword.
- Search BBC results by keyword
- Support region-based requests
- Support fetching multiple pages starting from a specific page
- Return result items, pagination data, and content metadata
Use XCrawl to Fetch BBC News Search Results
Usage
curl -s -X POST 'https://run.xcrawl.com/v1/data' \
-H 'Authorization: Bearer $XCRAWL_API_KEY'\
-H 'Content-Type: application/json' \
-d '{
"engine": "bbc_news_search",
"keyword": "coffee",
"location": "US",
"start_page": 1,
"pages": 1
}'Request parameter notes:
enginemust bebbc_news_searchkeywordspecifies the search keywordlocationspecifies the target regionstart_pageandpagescontrol the page range to fetch
Response Example
{
"result": [
{
"url": "https://www.bbc.com/search?q=coffee&page=1",
"query": "coffee",
"current_page": "1",
"page_size": 9,
"total_results": 10000,
"result_count": 9,
"results": [
{
"position": 1,
"title": "The 7am ravers swapping clubbing for coffee",
"url": "https://www.bbc.com/news/videos/c0j644158p3o",
"content_type": "video",
"image_url": "https://ichef.bbci.co.uk/news/480/...",
"first_updated_at": "2026-04-02T17:32:07.359000+00:00",
"content_domain": "news"
}
]
}
]
}Parameters
Required Parameters
| Parameter | Type | Description |
|---|---|---|
location | string | Specifies the target region. |
keyword | string | Specifies the search keyword. |
start_page | number | Specifies the page number to start from. |
pages | number | Specifies how many pages to fetch. |
Parameter Notes
locationdefaults toUSlocationsupports multiple region values such asUS,HK,CA,GB, andJPkeyworddefaults tocoffeestart_pagedefaults to1pagesdefaults to1
Response Fields
| Field | Type | Description |
|---|---|---|
url | string | Fetched BBC search page URL. |
base_url | string | Base site URL used to normalize relative links. |
page_title | string | Search page title. |
query | string | Final normalized search keyword. |
query_from_url | string | Keyword extracted from the request URL. |
query_from_next_data | string | Keyword extracted from the page data payload. |
current_page | string | Current result page number. |
page_size | number | Number of result items on the current page. |
total_results | number | Total result count. |
total_results_is_capped | boolean | Whether the total count appears capped. |
route_key | string | Internal page route key. |
country | string | Country value from the page state. |
server_env | string | Server environment string. |
correlation_id | string | Page correlation identifier. |
asset_prefix | string | Static asset prefix. |
build_id | string | Page build identifier. |
result_count | number | Number of parsed results returned in the response. |
meta | object | Page metadata. |
results | array | Search result item list. |
Result Item Fields
Each item in results[] typically includes:
| Field | Type | Description |
|---|---|---|
position | number | One-based position on the current page. |
id | string | Content identifier. |
title | string | Result title. |
url | string | Result URL. |
path | string | Relative result path. |
is_live_now | boolean | Whether the item is marked as live. |
description | string | Result summary text. |
content_type | string | Content type such as article, video, or episode. |
subtype | string | Result subtype. |
topics | array | Attached topic labels. |
brand_name | string | Brand or programme name. |
first_updated_timestamp_ms | number | First updated timestamp in milliseconds. |
last_updated_timestamp_ms | number | Last updated timestamp in milliseconds. |
first_updated_at | string | First updated time in ISO 8601 format. |
last_updated_at | string | Last updated time in ISO 8601 format. |
image_url | string | Primary image URL. |
image_alt_text | string | Image alt text. |
image_width | number | Image width. |
image_height | number | Image height. |
image_aspect_ratio | number | Image aspect ratio. |
content_domain | string | Normalized broad content domain inferred from the URL. |
