One BBC News article: headline, summary, authors with roles, published and updated times, section, topic tags, the full body as paragraphs and headings, images with captions, alt text and credits, videos, related links and the main image. Pass the article url (or its id), or latest=true with a section to open the newest article of that section.
Every response includes credits_used: the credits this call cost.
Parameters
name
type
description
url
string
A bbc.com or bbc.co.uk article link, e.g. https://www.bbc.com/news/articles/c0jdgl1yy7yo.
id
string
The article id, e.g. c0jdgl1yy7yo (used when no url is given).
latest
boolean
Open the newest article of the section instead of a given one. Example: true
section
string
Section for latest=true: top (default), world, uk, business, politics, technology, science_and_environment, health, entertainment_and_arts, world/europe, world/asia... Example: world
import os, requests
res = requests.get(
"https://api.api.sh/bbc/v1/article",
params={},
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/article");
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();
Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).
The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.