Chick-fil-A API endpoint
Returns one page of a content taxonomy's terms, each with its id, name, slug, parent and the number of entries carrying it. Every id is a ready-to-use `category` or `tag` filter value on GET /chick-fil-a/content, which is what makes the editorial corpora navigable rather than only pageable. `taxonomy` selects the vocabulary: `press_category` (16 terms) and `press_tag` (96) classify press releases, `story_category` (9) and `story_tag` (74) classify blog stories, `legal_category` (8) and `downloadable_asset_category` (7) classify those corpora, and `campaign` (9) is applied across several at once. Terms are ordered by name.
/chick-fil-a/content-taxonomyThis is the discovery endpoint for /api/v1/chick-fil-a/content. Every term id it returns is a ready-to-use category or tag filter value there, which is what makes the editorial corpora navigable rather than only pageable — without it, finding every press release about restaurant openings would mean paging all 289.
The vocabularies, and which corpus each classifies:
taxonomy | Terms | Classifies |
|---|---|---|
press_category | 16 | press releases |
press_tag | 96 | press releases |
story_category | 9 | blog stories |
story_tag | 74 | blog stories |
legal_category | 8 | legal documents |
downloadable_asset_category | 7 | press-kit assets |
campaign | 9 | applied across several corpora at once |
type=page has no vocabulary; corporate pages are not classified.
Terms are ordered by name. item_count is how many entries carry the term, and a term with a count of zero exists but currently matches nothing — filtering by it returns an empty page, not an error.
Query parameters:
taxonomy (required) — which vocabulary. One of press_category, press_tag, story_category, story_tag, legal_category, downloadable_asset_category, campaign. Any other value is rejected as an invalid parameter, including the menu taxonomies — those belong to /api/v1/chick-fil-a/menu-taxonomy.page (optional, default 1) — 1-based page number.per_page (optional, default 20, max 100) — terms per page.Response includes taxonomy, terms[], pagination, source_url, and fetched_at. Each term has id, name, slug, item_count, and parent (0 at the top level).
| Field | Filled in, of 16 checked | Values in the sample |
|---|---|---|
| id | 16 | |
| name | 16 | “Community” and 15 other values |
| slug | 16 | |
| item_count | 16 | 0 to 698, median 7 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| taxonomy | string | Yes | Which vocabulary. One of press_category, press_tag, story_category, story_tag, legal_category, downloadable_asset_category, campaign. Allowed values: press_category, press_tag, story_category, story_tag, legal_category, downloadable_asset_category, campaign. | press_category | |
| page | integer | No | 1-based page number (default 1) | 1 | |
| per_page | integer | No | Terms per page, 1-100 (default 20) | 100 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/chick-fil-a/content-taxonomy?taxonomy=press_category&page=1" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"taxonomy": "press_category",
"terms": [
{
"id": 570,
"name": "Community",
"slug": "community",
"item_count": 119,
"parent": 0
},
{
"id": 27,
"name": "Restaurant Openings",
"slug": "restaurant-openings",
"item_count": 37,
"parent": 0
}
],
"pagination": {
"page": 1,
"per_page": 20,
"total": 16,
"total_pages": 1
},
"source_url": "https://www.chick-fil-a.com/wp-json/wp/v2/press_category?page=1&per_page=20",
"fetched_at": "2026-09-01T09:12:00Z"
}
}Request schema
No body schema
Response schema
#/definitions/chickfila.contentTaxonomyResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | chickfila.MenuTaxonomyResponse | No | ||||
| data.fetched_at | string | No | ||||
| data.pagination | chickfila.pagination | No | pagination record, 4 fields: page, per_page, total, total_pages. Described under Chick-fil-A FAQ API. | |||
| data.source_url | string | No | ||||
| data.taxonomy | string | No | menu_taxonomy | |||
| data.terms | array | No | MenuTaxonomyTerm record, 5 fields: id, item_count, name, parent, slug. Described under Chick-fil-A Menu Taxonomy API. | |||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| 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/chick-fil-a/content-taxonomy?taxonomy=press_category&page=1" \
-H "x-api-key: $CRAWLORA_API_KEY"