---
title: "Get Requirement History"
method: GET
path: "/marketing/guidelines/requirements/{requirement_id}/history"
tags: ["marketing-guidelines"]
---

# Get Requirement History

`GET /marketing/guidelines/requirements/{requirement_id}/history`

## Request

- Base URL: `https://api.kobaltlabs.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.kobaltlabs.com/marketing/guidelines/requirements/{requirement_id}/history`
- Auth: none declared

Every version of this requirement, newest first.

## Path parameters

- `requirement_id` string, uuid, required

## Response `200`

Successful Response

- RequirementRevisionResponse[]
  - `revision_id` string, uuid, required
  - `revision_number` integer, required
  - `state` 'active' | 'disabled' | 'archived' | 'superseded' | 'proposed', required: Whether a requirement is in the working library, and if not, why not. All of them are recorded as revisions, so every one is reversible and readable. ARCHIVED and SUPERSEDED are deliberately distinct: ARCHIVED is a person deciding this obligation does not apply to them, SUPERSEDED is a newer decomposition of the same guideline taking over. A regeneration must never overwrite the first with the second — that would erase a human decision.
  - `requirement_text` string, required
  - `judging_guidance` string, nullable, required
  - `collateral_types` MarketingCollateralType[], nullable, required
  - `marketing_team_ids` string[], nullable, required
  - `trigger_terms` string[], required
  - `change_kind` 'extracted' | 'edited' | 'disabled' | 'enabled' | 'archived' | 'restored' | 'superseded' | 'proposed' | 'approved', required: What a revision was for. Redundant with comparing a revision to its predecessor, and that is the point: the reason a change was made is the part a diff cannot recover.
  - `change_note` string, nullable, required
  - `created` string, date-time, required
  - `created_by_email` string, nullable, required
  - `superseded_at` string, date-time, nullable, required

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-02** `425d5b8a3c17`: 3 warning
  - added the new `approved` enum value to the `items/change_kind` response property for the response status `200`
  - added the new `proposed` enum value to the `items/change_kind` response property for the response status `200`
  - added the new `proposed` enum value to the `items/state` response property for the response status `200`

[Operation history](https://skmtc.dev/kobaltlabs/apis/fastapi/changes/marketing/guidelines/requirements/:requirement_id/history/get.md)

---

[API](https://skmtc.dev/kobaltlabs/apis/fastapi.md) - [All operations](https://skmtc.dev/kobaltlabs/apis/fastapi/llms.txt) - [OpenAPI document](https://skmtc.dev/kobaltlabs/apis/fastapi/revisions/8587332d5e43?raw)
