Birmingham Mail API endpoint
Lists the 23 Birmingham Mail sections that `birminghammail-headlines` accepts, such as `news/midlands-news`, `black-country`, `sport/football/transfer-news` and `whats-on`. Each has a `slug`, a display `name` and the feed `url`. Only sections with a recently updated feed are included (last verified 2026-09-25), and each returns up to about 25 entries.
/birminghammail/sectionsReturns the public Birmingham Mail editorial section inventory accepted by birminghammail-headlines. Each entry has a slug, a display name, and the public feed url. The accepted slugs are: news, news/midlands-news, news/uk-news, news/world-news, news/showbiz-tv, news/cost-of-living, news/money, news/health, black-country, motoring, motoring/motoring-news, sport, sport/football, sport/football/football-news, sport/football/transfer-news, whats-on, whats-on/whats-on-news, whats-on/family-kids-news, whats-on/food-drink-news, whats-on/music-nightlife-news, whats-on/shopping, travel, special-features.
Every listed feed returned a live RSS document with at least one entry and a build date within the previous week when the list was last verified (2026-09-25). Sections whose feed was empty and unchanged for years (news/nostalgia, news/property, sport/other-sport, sport/sport-opinion, sport/cricket, sport/rugby, whats-on/theatre-news, whats-on/film-news, whats-on/comedy-news, in-your-area), feeds that return 404 (news/tv, news/politics, sport/boxing) and the stray news/local-news feed (one old health story) are not included, nor are topic pages under /all-about/. Feeds return up to about 25 entries.
| Field | Filled in, of 23 checked | Values in the sample |
|---|---|---|
| slug | 23 | |
| name | 23 | “News” and 22 other values |
| url | 23 | birminghammail.co.uk |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/birminghammail/sections" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"sections": [
{
"slug": "news/midlands-news",
"name": "Midlands News",
"url": "https://www.birminghammail.co.uk/news/midlands-news/?service=rss"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/publicnews.sectionsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | newsplatform.SectionsResponse | No | ||||
| data.sections | array | No | ||||
| data.sections[].name | string | No | ||||
| data.sections[].slug | string | No | ||||
| data.sections[].url | string | No |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/birminghammail/sections" \
-H "x-api-key: $CRAWLORA_API_KEY"