GMA News API endpoint
Returns public GMA News Online article metadata and body paragraphs from a canonical article URL. GMA News articles are free to read; no content is paywalled.
/gmanews/articleQuery parameter: url is a canonical HTTPS gmanetwork.com article URL of the form https://www.gmanetwork.com/news/<section>/<subsection>/<id>/<slug>/story/ (a missing trailing slash is accepted). Section, subsection and id come from the url values returned by gmanews-news and gmanews-headlines. Returns title, description, publication and update time (UTC), section label, authors, lead image and the full list of body paragraphs. Author names come from the page byline (for example GMA News, a staff reporter, or a wire service such as Reuters); GMA News has no author pages, so there is no author endpoint.
Free to read: GMA News Online does not paywall articles, so paywalled is never set. In-body "READ: ..." cross-link lines are dropped from paragraphs. Video, photo and archive pages, section pages and other non-article URLs return a 400 error; an unknown article id returns a 404 error.
| Field | In the sample | Value in the sample |
|---|---|---|
| url | Has a value | gmanetwork.com |
| title | Has a value | 54 characters |
| description | Has a value | 239 characters |
| published_at | Has a value | 2026-09-24 |
| updated_at | Has a value | 2026-09-24 |
| section | Has a value | “News” |
| authors | Has a value | 3 entries |
| image_url | Has a value | images.gmanews.tv |
| paragraphs | Has a value | 27 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| url | string | Yes | Canonical GMA News article URL | https://www.gmanetwork.com/news/topstories/world/1003638/at-un-netanyahu-defends-israel-as-delegates-storm-out/story/ | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/gmanews/article?url=https%3A%2F%2Fwww.gmanetwork.com%2Fnews%2Ftopstories%2Fworld%2F1003638%2Fat-un-netanyahu-defends-israel-as-delegates-storm-out%2Fstory%2F" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"url": "https://www.gmanetwork.com/news/topstories/world/1003638/example-headline/story",
"title": "Example headline",
"description": "Example description.",
"published_at": "2026-09-24T20:03:23Z",
"section": "News",
"authors": [
"Example Reporter",
"GMA News"
],
"image_url": "https://images.gmanews.tv/webpics/2026/09/example.jpg",
"paragraphs": [
"Example public paragraph."
]
}
}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/gmanews/article?url=https%3A%2F%2Fwww.gmanetwork.com%2Fnews%2Ftopstories%2Fworld%2F1003638%2Fat-un-netanyahu-defends-israel-as-delegates-storm-out%2Fstory%2F" \
-H "x-api-key: $CRAWLORA_API_KEY"