marketing-guidelines

Set Requirement State

Turn a requirement off, remove it, put it back, or approve a proposal.

Removal is archival: the requirement and every version of it stay readable, which is the whole point on regulated compliance material.

An approval may name the rule it replaces (replaces_requirement_id), which retires that rule in the same transaction. See _validate_replacement for what is allowed and why the reviewer, rather than a wording match, is the one who says so.

post/marketing/guidelines/requirements/{requirement_id}/state

Path parameters

requirement_idstring uuid required

Request body

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.

change_notestring nullable
replaces_requirement_idstring uuid nullable

Response

Successful Response

requirement_idstring uuid required
file_idstring uuid required
filenamestring nullable required
decomposition_idstring uuid nullable required
guideline_set_idstring uuid nullable required
ordinalinteger required
revision_numberinteger 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_textstring required
judging_guidancestring nullable required
contextstring nullable required
collateral_typesMarketingCollateralType[] nullable required
marketing_team_idsstring[] nullable required
source_collateral_termsstring[] nullable required
trigger_termsstring[] required
unresolved_collateral_termsstring[] required
section_labelstring nullable required
titlestring nullable required
source_pageinteger nullable 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_notestring nullable required
updated_atstring date-time required
updated_by_emailstring nullable required
has_human_editsboolean required
downvotesinteger nullable

Changes

Changed in 1 of the 5 revisions of this API.134

  • 425d5b8a3c17134See the full diff
    • response property decomposition_id list-of-types was widened by adding types null to media type application/json of response 200

      response-property-list-of-types-widened

    • added the new approved enum value to the response property for the response status

      response-property-enum-value-added

    • added the new proposed enum value to the response property for the response status

      response-property-enum-value-added

    • added the new proposed enum value to the response property for the response status

      response-property-enum-value-added

    • added the new optional request property

      new-optional-request-property

    • added the new proposed enum value to the request property

      request-property-enum-value-added

    • added the required property to the response with the status

      response-required-property-added

    • added the required property to the response with the status

      response-required-property-added

    This revision also has 5 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog