+BBC News API
BBC News and BBC Sport headlines, full articles and BBC search results as JSON.
The API.SH BBC News API returns BBC content as JSON. List the latest stories of a BBC News or BBC Sport section with keyword and time filters, open an article for its full body, authors, topic tags and images, and run the BBC's own search across news, sport, video and audio programmes.
- 3 endpoints
- from $1 / 1,000 calls
- 1,000 free credits / month
- failed calls free
GET https://api.api.sh/bbc/v1/ search
{ "success": true } What you can build with the BBC News API
News monitoring and alerts
Poll a section's newest stories with a keyword filter and a since time, and alert on anything new that matches.
Full-text archives and NLP
Store each article's body as paragraphs and headings with its section, tags and publish times for text analysis.
Topic and media research
Search the BBC for a person, company or topic and collect matching articles, videos and programmes with their topics.
News apps and widgets
Show BBC headlines with summaries and images by section in a dashboard, newsletter or app.
BBC News data you get
Field names from real responses. Numbers come parsed, URLs absolute, dates in ISO 8601.
BBC News API endpoints and prices
Every BBC News endpoint costs 1 credit per call: credits are $1 per 1,000 on a monthly plan, $2 pay-as-you-go. Pricing
| Search the BBC /bbc/ | $1 · $2 PAYG 1 credit |
| BBC article /bbc/ | $1 · $2 PAYG 1 credit |
| BBC headlines by section /bbc/ | $1 · $2 PAYG 1 credit |
Call the BBC News API
Search the BBC: GET https://api.api.sh/bbc/
curl "https://api.api.sh/bbc/v1/search?q=climate" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/bbc/v1/search",
params={"q": "climate"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/bbc/v1/search");
url.searchParams.set("q", "climate");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); # Google Sheets (API.SH add-on)
=APISH("/bbc/v1/search", "q", "climate")
# Zapier, Make, n8n (verified node): pick the API.SH app,
# choose "BBC News" and "Search the BBC".
# AI agents (Claude, ChatGPT, Cursor): add the
# API.SH MCP server https://api.sh/mcp - Create a free accountConfirm your email and get 1,000 free credits every month. No card needed.
- Create an API keyOne key works for all 482 platforms.
- Send the requestJSON back in one call. Add
output=csvoroutput=ndjsonfor files.
Why API.SH for BBC News data
- Public data only: no BBC News login, cookies or account needed
- One key and one response shape for BBC News and 481 other platforms
- Built and maintained by API.SH, not third-party publishers
- Pay per call; errors on our side cost nothing
- Live status for every endpoint
API.SH vs the official BBC News API
The BBC does not offer a public API for fetching BBC News articles; its News Hub API key is only for partner organizations, and the RSS feeds carry headlines only. API.SH returns public BBC headlines, full articles and search results as JSON.
Instead of maintaining a BBC News scraper or using a general news API that only gives snippets, API.SH gives you full BBC article text with one key and a fixed price per call.
BBC News API questions
What BBC News data can I get?+
The latest stories of a BBC News or BBC Sport section (/bbc/v1/headlines), one full article with body, authors, tags and images (/bbc/v1/article) and the BBC's own search across news, sport, video and audio (/bbc/v1/search).
How much does the BBC News API cost?+
Every BBC News endpoint costs 1 credit per call. On a monthly plan 1,000 credits cost $1 (Starter is $50/month for 50,000 credits). Pay-as-you-go is $2 per 1,000 credits, with top-ups from $15 that never expire.
Is there a free trial?+
Yes. Every account gets 1,000 free credits every month. That is 1,000 calls to /bbc/v1/article at 1 credit each.
Is there an official BBC News API?+
Not for the public. The BBC's News Hub API is limited to partner organizations, and its RSS feeds give headlines and summaries only. API.SH returns full public articles as JSON.
Do I need a BBC account or API key?+
No. You only need your API.SH key. No endpoint uses a BBC login or licence.
Can I use the BBC News API from Python?+
Yes. Use the API.SH Python SDK or any HTTP client: call /bbc/v1/headlines with a section and parse the JSON. There is no HTML parsing to write.
Is scraping BBC News legal?+
API.SH reads public pages only. BBC articles are copyrighted, so use the data for research, monitoring and analysis, follow the BBC's terms and your local law, and do not republish full articles.
How do I get started?+
1. Sign up at api.sh. 2. Copy your API key. 3. Call /bbc/v1/headlines with a section, then /bbc/v1/article with a story url. Request examples and every parameter are in the docs at https://api.sh/docs. You can also use the JS or Python SDK, Google Sheets, Zapier, Make, n8n or the MCP server at https://api.sh/mcp.