The New Yorker API endpoint
Returns public The New Yorker article metadata and body paragraphs from a canonical article URL. The New Yorker uses a metered paywall: when a page marks itself as gated, only the publicly served text is returned and is_truncated is true; is_accessible_for_free reports the page's own access flag.
/newyorker/articleQuery parameter: url is a canonical HTTPS newyorker.com article URL, either /<channel>/<department>/<slug> (channels news, culture, humor, books, tech, science, business, sports) or /magazine/YYYY/MM/DD/<slug>. Cartoon, podcast, video, gallery, and puzzle URLs are rejected as invalid params. Query strings are ignored.
Returns public metadata (title, description, publication and update time, section, authors, lead image) and the body paragraphs.
Paywall behavior: The New Yorker meters articles behind a paywall.
is_accessible_for_free mirrors the page's own free-access flag.is_truncated is true when the page marks itself as gated. In that case paragraphs holds only the text the page publicly serves and must not be treated as the complete story.is_truncated is false, paragraphs is the full body the page served.| Field | In the sample | Value in the sample |
|---|---|---|
| url | Has a value | newyorker.com |
| title | Has a value | 64 characters |
| description | Has a value | 160 characters |
| published_at | Has a value | 2026-09-23 |
| updated_at | Has a value | 2026-09-23 |
| section | Has a value | “the lede” |
| authors | Has a value | 1 entry |
| image_url | Has a value | media.newyorker.com |
| is_accessible_for_free | Has a value | true |
| is_truncated | Has a value | false |
| paragraphs | Has a value | 25 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| url | string | Yes | Canonical The New Yorker article URL | https://www.newyorker.com/news/the-lede/example-article-slug | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/newyorker/article?url=https%3A%2F%2Fwww.newyorker.com%2Fnews%2Fthe-lede%2Fexample-article-slug" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"url": "https://www.newyorker.com/news/the-lede/example-article-slug",
"title": "Example article",
"published_at": "2026-09-23T18:25:32Z",
"section": "the lede",
"authors": [
"Example Author"
],
"is_accessible_for_free": true,
"is_truncated": false,
"paragraphs": [
"Example public paragraph."
]
}
}Request schema
No body schema
Response schema
#/definitions/publicnews.newyorkerArticleResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | newyorker.ArticleResponse | No | ||||
| data.authors | array | No | ||||
| data.description | string | No | ||||
| data.image_url | string | No | ||||
| data.is_accessible_for_free | boolean | No | ||||
| data.is_truncated | boolean | No | ||||
| data.paragraphs | array | No | ||||
| 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 |
| 429 | Too Many Requests | #/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/newyorker/article?url=https%3A%2F%2Fwww.newyorker.com%2Fnews%2Fthe-lede%2Fexample-article-slug" \
-H "x-api-key: $CRAWLORA_API_KEY"