Discover/BBC API
live

BBC APInews.bbc.co.uk ↗

Fetch BBC News section front pages, full article text, and search results via 3 endpoints. Get headlines, body paragraphs, authors, topics, and publication timestamps.

Endpoint health
verified 2h ago
list_section_stories
get_article
search_content
3/3 passing latest checkself-healing
Endpoints
3
Updated
2h ago

What is the BBC API?

The BBC News API exposes 3 endpoints covering BBC News section front pages, full article content, and keyword search across BBC properties. The list_section_stories endpoint returns curated story collections for any section path (e.g. world, technology, business), while get_article delivers structured body paragraphs, author metadata, topic tags, and a millisecond-epoch publication timestamp for a single article URL.

This call costs1 credit / call— charged only on success
Try it
Section path under BBC News, without leading slash, e.g. world, uk, business, technology, or a nested path such as world/africa. Omitted or empty returns the main News front page.
→ api.parse.bot/scraper/f8a1cffa-eb10-459a-9008-c235920bb5f5/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f8a1cffa-eb10-459a-9008-c235920bb5f5/list_section_stories?section=world' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 3 totalmissing one? ·

Returns the stories currently shown on a BBC News section front page, grouped into the page's curated collections (e.g. an untitled top-stories block, 'Latest updates', 'Most read', 'Sport'). Each story carries its title, summary, canonical URL, content type (article, video, live, etc.), section/topic labels, and millisecond epoch timestamps. article_id is populated only for standard articles (URLs containing /articles/); videos and live pages have article_id null. One round trip; no pagination is available (the site loads further 'Latest updates' pages only through interactive browsing, so only the initially rendered items are returned). The same story may appear in more than one collection. An unknown section path returns a 422 not-found error.

Input
ParamTypeDescription
sectionstringSection path under BBC News, without leading slash, e.g. world, uk, business, technology, or a nested path such as world/africa. Omitted or empty returns the main News front page.
Response
{
  "type": "object",
  "fields": {
    "section": "requested section path, null for the main front page",
    "sections": "array of curated collections in page order; each has title (null for untitled blocks) and stories",
    "page_title": "section title as shown on the page (empty string on the main front page)",
    "story_count": "total story cards across all collections (duplicates across collections counted separately)",
    "sections[].stories": "array of story cards: title, description, url, article_id (null for non-article content), content_type, subtype, topics (label strings), first_published and last_updated (ms epoch), is_live, image_url, image_alt"
  },
  "sample": {
    "data": {
      "section": "world",
      "sections": [
        {
          "title": null,
          "stories": [
            {
              "url": "https://www.bbc.com/news/articles/cqgmrr9ekr7ko",
              "title": "Iran offers US deal to reopen Strait of Hormuz in seven days",
              "topics": [
                "Middle East"
              ],
              "is_live": false,
              "subtype": "news",
              "image_alt": "Ships in the Strait of Hormuz from the Oman coast",
              "image_url": "https://ichef.bbci.co.uk/news/480/cpsprodpb/50c9/live/f69f3490-b97f-11f1-8fe1-e102ea0756fc.jpg",
              "article_id": "cqgmrr9ekr7ko",
              "description": "Asked about the Iranian proposal, a US official told the BBC \"constructive discussions\" were taking place through mediators.",
              "content_type": "article",
              "last_updated": 1790398989859,
              "first_published": 1790373443012
            }
          ]
        },
        {
          "title": "Latest updates",
          "stories": [
            {
              "url": "https://www.bbc.com/news/videos/ck9800jdj1q0o",
              "title": "Bangkok declares disaster as heavy rains spark flooding",
              "topics": [
                "Asia"
              ],
              "is_live": false,
              "subtype": "clip news",
              "image_alt": "Two women in Thailand navigate thigh-deep floods with a shopping trolley in Thailand",
              "image_url": "https://ichef.bbci.co.uk/news/480/cpsprodpb/d4e5/live/b396e410-b987-11f1-a430-4d16ee157c41.jpg",
              "article_id": null,
              "description": "Days of near continuous downpours have caused widespread flooding in the Thai capital.",
              "content_type": "video",
              "last_updated": 1790404138551,
              "first_published": 1790404138551
            }
          ]
        }
      ],
      "page_title": "World",
      "story_count": 30
    },
    "status": "success"
  }
}

About the BBC API

Section Front Pages

The list_section_stories endpoint accepts an optional section parameter — a path string such as uk, business, or a nested path — and returns all curated collections visible on that section's front page. Each collection in the sections array carries a title (null for untitled top-story blocks) and a stories array. Each story card includes title, description, url, content_type, subtype, article_id (null for non-article content such as video), and topics. The response also reports page_title and a story_count that counts each card separately even if it appears in multiple collections.

Full Article Content

The get_article endpoint takes an article_url — directly usable from any url field returned by list_section_stories or search_content where content_type is article — and returns the full structured body as both a paragraphs array and a pre-joined body string. Additional fields include headline, published (ms epoch), authors (each with name and nullable role), sections (the section the article belongs to, with title and url), topics (with id and title), images (inline stills with url and alt), and the parsed article_id.

Search

The search_content endpoint accepts a free-text query and an optional 1-based page number. It returns up to 9 result cards per page in the same shape as section story cards. The response includes total_results (the site-reported match count, capped at 10,000), has_more for pagination checks, and the page_size as served. Results span news articles, sport, video, and audio programmes — the content_type and subtype fields let you filter client-side.

Reliability & maintenanceVerified

The BBC API is a managed, monitored endpoint for news.bbc.co.uk — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when news.bbc.co.uk changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official news.bbc.co.uk API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Monitor BBC News front-page story rotation by polling list_section_stories for a section and diffing the returned story_count and story URLs over time.
  • Build a news digest tool that fetches paragraphs and authors from get_article for each article URL surfaced by a section scan.
  • Extract topics tag arrays from articles to classify BBC coverage by subject and track topic frequency across sections.
  • Search BBC archives by keyword using search_content and paginate through has_more to collect all matching article URLs.
  • Aggregate published timestamps from batch get_article calls to analyze BBC publishing cadence for a given section or topic.
  • Pull inline images arrays from articles to build a media asset index linked to editorial content.
  • Identify non-article content (video, audio) in section pages using the content_type and subtype fields on story cards from list_section_stories.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does BBC News have an official developer API?+
BBC has historically offered a public content API, but access has been restricted and the programme is not currently open for new registrations. The Parse BBC News API provides structured access to section pages, article content, and search without requiring BBC developer credentials.
What does `list_section_stories` return for the main front page versus a named section?+
For the main front page, omit the section parameter (or pass an empty string); page_title will be an empty string and section will be null. For named sections like technology or world/europe, pass the path without a leading slash. Either way the response groups stories into named and untitled curated collections in their on-page order.
Does `get_article` work for BBC video or audio content?+
No — get_article is designed for items where content_type is article. Video and audio content surfaces through list_section_stories and search_content as story cards with their own content_type and subtype values, but those items don't have a fetchable article body. You can fork this API on Parse and revise it to add a dedicated endpoint for video metadata if needed.
Is there a way to retrieve comments or reader engagement data for BBC articles?+
Not currently. The API covers article text, authors, topics, images, publication timestamps, and section metadata. Reader comments and engagement metrics are not exposed. You can fork this API on Parse and revise it to add an endpoint targeting that data if it becomes available.
How does pagination work in `search_content`, and is there a limit on results?+
Pass an integer page parameter (1-based) and check has_more in the response to know whether another page exists. Each page returns up to 9 results as reported by page_size. The total_results field reflects the site-reported match count, but the site caps that figure at 10,000 regardless of the actual corpus size.
Page content last updated . Spec covers 3 endpoints from news.bbc.co.uk.
Related APIs in News MediaSee all →
nytimes.com API
Retrieve the latest news articles from The New York Times organized by topic sections like politics, business, technology, and more. Stay informed with current stories from one of the world's leading news sources without manually browsing their website.
reuters.com API
Access data from reuters.com.
news.un.org API
Access UN News headlines, stories, and articles organized by topic and region across multiple languages. Search news content, retrieve in-depth reports, and subscribe to RSS feeds for updates on global events and UN initiatives.
nrk.no API
Access the latest news from Norway's leading broadcaster NRK.no, including front-page stories, category-specific articles, regional news, and breaking news updates through a unified search and browsing interface. Stay informed with full article content, RSS feeds, and real-time news ticker notifications across all major topics.
apnews.com API
Search for news articles from Associated Press on any topic and retrieve complete article details including headlines, summaries, and content with easy pagination. Stay informed with current news stories by finding and reading articles on subjects that matter to you.
news.google.com API
Access data from news.google.com.
sky.com API
Access football news, transfer updates, and match scores from Sky Sports. Retrieve headlines and full article content across teams and competitions, follow live transfer window bulletins, and look up fixtures and results by date.
oxu.az API
Access data from oxu.az.