Variety API endpoint
Returns a Variety author profile with name, biography, photo, social links and one page of recent articles. Give either `slug` (such as `ellise-shafer`) or an author `url`, which may include a `/page/<n>/` segment; `page` (default 1) overrides it. `has_next_page` shows whether another page exists.
/variety/authorQuery parameters:
slug (optional): an author slug, e.g. ellise-shafer.url (optional): a canonical https://variety.com/author/<slug> URL, optionally with a /page/<n>/ path segment, as an alternative to slug. A URL that carries Variety's own /page/<n>/ pagination segment sets the page from that segment.page (optional): 1-based page number of the author's article list; overrides any page number embedded in url. Defaults to 1.Exactly one of slug/url is required. has_next_page reports whether Variety's own pagination link indicates a further page exists.
Example response (truncated):
{"code":200,"data":{"name":"Ellise Shafer","slug":"ellise-shafer","url":"https://variety.com/author/ellise-shafer/","biography":["Ellise Shafer is Variety's Deputy Editor of International."],"image_url":"https://variety.com/wp-content/uploads/2025/03/Ellise-shoulder.jpg","social_links":[{"platform":"twitter","url":"https://twitter.com/EllieShafer"}],"page":1,"has_next_page":true,"articles":[{"title":"Example headline","url":"https://variety.com/2026/music/global/example-article-1234567/"}]}}
| Field | Filled in, of 27 checked | Values in the sample |
|---|---|---|
| title | 27 | median 116 characters |
| url | 27 | variety.com |
| image_url | 27 | variety.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| slug | string | No | Author slug, e.g. ellise-shafer | ellise-shafer | |
| url | string | No | Canonical variety.com/author/<slug> URL, optionally with a /page/<n>/ segment; alternative to slug | https://variety.com/author/ellise-shafer/ | |
| page | integer | No | 1-based page number; overrides any page number in url | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/variety/author?page=1" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"name": "Ellise Shafer",
"slug": "ellise-shafer",
"url": "https://variety.com/author/ellise-shafer/",
"biography": [
"Ellise Shafer is Variety's Deputy Editor of International."
],
"image_url": "https://variety.com/wp-content/uploads/2025/03/Ellise-shoulder.jpg",
"social_links": [
{
"platform": "twitter",
"url": "https://twitter.com/EllieShafer"
}
],
"page": 1,
"has_next_page": true,
"articles": [
{
"title": "Example headline",
"url": "https://variety.com/2026/music/global/example-article-1234567/"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/publicnews.varietyAuthorResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | variety.AuthorResponse | No | ||||
| data.articles | array | No | HeadlineItem record, 7 fields: author, image_url, published_at, summary, title, type, url. Described under Variety top stories API. | |||
| data.biography | array | No | ||||
| data.has_next_page | boolean | No | ||||
| data.image_url | string | No | ||||
| data.name | string | No | ||||
| data.page | integer | No | ||||
| data.slug | string | No | ||||
| data.social_links | array | No | ||||
| data.social_links[].platform | string | No | ||||
| data.social_links[].url | 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/variety/author?page=1" \
-H "x-api-key: $CRAWLORA_API_KEY"