Vanguard API endpoint
Returns one Vanguard (Nigeria) story by its `url`, a vanguardngr.com link in the `/YYYY/MM/<slug>/` form; section pages and feeds are rejected. The response has the title, description, times, section, authors, lead image and body `paragraphs`. Vanguard has no paywall, so `paywalled` is never set.
/vanguardng/articleQuery parameter: url is a canonical HTTPS Vanguard story URL on vanguardngr.com or www.vanguardngr.com in the WordPress date form /YYYY/MM/<slug>/, e.g. https://www.vanguardngr.com/2026/09/nigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons/. Section pages, feeds and other hosts return an invalid-params error. The query string and fragment are dropped.
Returns public metadata (title, description, published_at, updated_at, section, authors, image_url) and the body paragraphs. Related-story cards, captions, embeds, share widgets and ad slots are not included. authors is the on-page "By <Name>" byline when the story has one, otherwise the site's account name (often a desk account such as Nwafor). The byline line itself stays as the first paragraph.
Paywall behavior: Vanguard has no paywall or metered access; every story sampled on 2026-09-25 returned its full body to an anonymous request, so paywalled is never set and there is no gated example URL. If Cloudflare challenges the request the endpoint returns an upstream error instead of a body.
Example response (truncated):
{"code":200,"data":{"url":"https://www.vanguardngr.com/2026/09/nigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons","title":"Nigeria’s trauma burden calls for coordinated care — Orthopaedic surgeons","published_at":"2026-09-25T00:46:00Z","section":"Health","authors":["Chioma Obinna"],"paragraphs":["By Chioma Obinna","Experts in orthopaedic and trauma care have called for a fundamental shift in Nigeria’s approach to treating patients with traumatic and musculoskeletal injuries."]}}
| Field | In the sample | Value in the sample |
|---|---|---|
| url | Has a value | vanguardngr.com |
| title | Has a value | 73 characters |
| published_at | Has a value | 2026-09-25 |
| section | Has a value | “Health” |
| authors | Has a value | 1 entry |
| image_url | Has a value | cdn.vanguardngr.com |
| paragraphs | Has a value | 35 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| url | string | Yes | Canonical Vanguard article URL | https://www.vanguardngr.com/2026/09/nigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons/ | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/vanguardng/article?url=https%3A%2F%2Fwww.vanguardngr.com%2F2026%2F09%2Fnigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons%2F" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"url": "https://www.vanguardngr.com/2026/09/nigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons",
"title": "Nigeria’s trauma burden calls for coordinated care — Orthopaedic surgeons",
"published_at": "2026-09-25T00:46:00Z",
"section": "Health",
"authors": [
"Chioma Obinna"
],
"paragraphs": [
"By Chioma Obinna",
"Experts in orthopaedic and trauma care have called for a fundamental shift in Nigeria’s approach to treating patients with traumatic and musculoskeletal injuries."
]
}
}Request schema
No body schema
Response schema
#/definitions/publicnews.articleResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | newsplatform.ArticleResponse | No | ||||
| data.authors | array | No | ||||
| data.description | string | No | ||||
| data.image_url | string | No | ||||
| data.paragraphs | array | No | ||||
| data.paywalled | boolean | No | Paywalled is true when the publisher serves only a teaser of this article to anonymous readers, so Paragraphs is a partial body rather than the full text. It is omitted when the full public body was returned. | |||
| data.published_at | string | No | ||||
| data.section | string | No | ||||
| data.title | string | No | ||||
| data.updated_at | string | No | ||||
| data.url | string | No |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/vanguardng/article?url=https%3A%2F%2Fwww.vanguardngr.com%2F2026%2F09%2Fnigerias-trauma-burden-calls-for-coordinated-care-orthopaedic-surgeons%2F" \
-H "x-api-key: $CRAWLORA_API_KEY"