---
title: "Look up one KFC promotion by its redemption code or serialized code"
method: GET
path: "/kfc/promotion"
tags: ["KFC"]
---

# Look up one KFC promotion by its redemption code or serialized code

`GET /kfc/promotion`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/kfc/promotion`
- Auth: API key in header `x-api-key`

Returns one promotion by its redemption code (the code a customer types in at checkout) or its serialized code (a unique per-print QR/serial code, e.g. from a printed coupon, that resolves to a shared redemption code and its promotion). Exactly one of code or serialized_code is required. A serialized-code lookup additionally returns that code's own usage metadata (redemption_code, times_used, code_status, group_status, effective_date, expiration_date) alongside the promotion. An unknown or expired code returns a 404 rather than a null success payload.

## Query parameters

- `code` string
- `serialized_code` string

## Headers

- `x-api-key` string, required

## Response `200`

OK

- KfcPromotionResponseDoc
  - `code` integer: Code is the HTTP status code or a custom code used to indicate the result of the request @example 200
  - `data` KfcPromotionResponse
    - `automatic` boolean
    - `code_status` string
    - `description` string
    - `display_name` string
    - `effective_date` string
    - `expiration_date` string
    - `fetched_at` string
    - `group_status` string
    - `name` string
    - `promotion_id` string
    - `redemption_code` string: The fields below are populated only when looked up by serialized_code -- a serialized code carries its own usage metadata distinct from the promotion it resolves to.
    - `redemption_codes` string[]: RedemptionCodes is populated from the public promotion's active code connection. It gives callers a durable discovery path for PromotionByCode instead of requiring a guessed or stale code.
    - `source_url` string
    - `times_used` integer
  - `msg` unknown

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `429`: Too Many Requests
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/028417aa35bb?raw)
