Create a new claim assignment for a product. Returns 201 with the created assignment on success; 404 if the GTIN or claim_id does not exist; 409 if the claim is already assigned to this product (the (product, claim) pair is unique).
Documentation Index
Fetch the complete documentation index at: https://docs.closient.com/llms.txt
Use this file to discover all available pages before exploring further.
GTIN-8, GTIN-12, GTIN-13, or GTIN-14 barcode digits (no spaces, no hyphens). Shorter forms are zero-left-padded to GTIN-14 server-side. Returns 404 if no product matches the normalized GTIN.
8 - 14^\d{8,14}$Request body for POST /products/{gtin}/claims.
Creates a new :class:ClaimAssignment linking the GTIN's product to
the claim identified by claim_id. Returns 409 Conflict if the
assignment already exists.
UUID of the :class:Claim to assign. Use the id field from GET /claims/{id}.
22^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$Developer-attached key/value data. Send {} or null to clear. Empty-string values delete that key. Omitted keys are preserved.
How the claim is asserted. Defaults to BRAND_SELF_DECLARED for brand-supplied data; set to THIRD_PARTY_VERIFIED when an audit trail backs the claim.
BRAND_SELF_DECLARED, THIRD_PARTY_VERIFIED Start of validity for this claim (ISO 8601). Optional.
End of validity for this claim (ISO 8601). Optional; null = open-ended.
URL to supporting evidence (third-party certificate scan, lab report, supplier letter). Empty when the source is BRAND_SELF_DECLARED and no evidence exists.
Free-text notes about the evidence. Empty when not provided.
Created
A claim assigned to a specific product.
Mirrors :class:apps.certifications.models.ClaimAssignment. Most
fields proxy through to the linked :class:Claim record; source,
valid_from, expiration_date, and metadata carry the
per-instance state.
Like :class:CertificationAssignmentOut, id and id are
the claim's identifiers (not the assignment's), so callers can
deep-link to the claim record.
URL-safe 22-character shortuuid encoding of the row's UUID primary key. Stable across the row's lifetime; suitable for sharing in URLs, log lines, and external SDK clients. Accepted on input as either the shortuuid form or the canonical UUID form (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
22^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$Display name of the underlying claim (e.g. Non-GMO).
100Stable code of the underlying claim (e.g. NON_GMO).
50Category of the underlying claim. See :class:ClaimCategoryEnum for the full set of values.
DIETARY, INGREDIENT_ABSENCE, ALLERGEN_FREE, PROCESS, SUSTAINABILITY, OTHER How the claim is asserted. BRAND_SELF_DECLARED means the brand states the claim without third-party verification; THIRD_PARTY_VERIFIED means an independent body has verified it.
BRAND_SELF_DECLARED, THIRD_PARTY_VERIFIED Developer-attached key/value data attached to this object. Up to 50 keys; key max 40 chars, value max 500 chars.
Start of validity for this claim (ISO 8601). null when no start date was recorded — treat as 'valid since unknown date'.
End of validity for this claim (ISO 8601). null for claims with no scheduled expiry.