Skip to main content
PUT
Update product link

Authorizations

X-API-Key
string
header
required

Path Parameters

Id of the product link.

Required string length: 22
Pattern: ^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$

Body

application/json

Payload for PUT /product-links/{link_id}.

Partial update — only the keys present in the request body are applied. product_id/brand_id are not accepted here: a link's owner is fixed at creation.

GS1 Web Vocabulary link-type CURIE, e.g. gs1:promotion, gs1:loyaltyProgram, gs1:homepage. Validated against the live GS1 Web Vocabulary link-type set — an unknown or resolver-only CURIE (gs1:defaultLink, gs1:handledBy, …) is rejected with 422.

Available options:
gs1:activityIdeas,
gs1:allergenInfo,
gs1:appDownload,
gs1:backgroundInfo,
gs1:brandHomepageClinical,
gs1:brandHomepagePatient,
gs1:careersInfo,
gs1:certificationInfo,
gs1:consumerHandlingStorageInfo,
gs1:dpp,
gs1:eifu,
gs1:epcis,
gs1:epil,
gs1:eventsInfo,
gs1:faqs,
gs1:hasRetailers,
gs1:homepage,
gs1:ingredientsInfo,
gs1:instructions,
gs1:jws,
gs1:leaveReview,
gs1:locationInfo,
gs1:logisticsInfo,
gs1:loyaltyProgram,
gs1:masterData,
gs1:menuInfo,
gs1:nutritionalInfo,
gs1:openingHoursInfo,
gs1:paymentLink,
gs1:pip,
gs1:promotion,
gs1:purchaseSuppliesOrAccessories,
gs1:quickStartGuide,
gs1:recallStatus,
gs1:recipeInfo,
gs1:registerProduct,
gs1:registryEntry,
gs1:relatedImage,
gs1:relatedVideo,
gs1:reportFound,
gs1:review,
gs1:safetyInfo,
gs1:scheduleTime,
gs1:serviceInfo,
gs1:smartLabel,
gs1:smpc,
gs1:socialMedia,
gs1:statisticInfo,
gs1:subscribe,
gs1:support,
gs1:sustainabilityInfo,
gs1:traceability,
gs1:tutorial,
gs1:userAgreement,
gs1:verificationService,
gs1:whatsInTheBox
url
string | null

Destination URL. May include {gtin}/{lot}/{serial} substitution tokens to prefill the brand's page from the scan context when use_ai_substitution is set.

Maximum string length: 2048
label
string | null

Link label shown on the hosted page. Defaults to the GS1 link type's title when blank.

Maximum string length: 120
description
string | null

Optional longer description shown alongside the link.

order
integer | null

Display order within the link type's group on the hosted page (ascending).

Required range: x >= 0
use_ai_substitution
boolean | null

When set, treat url as a template and inject the scanned GS1 AIs (GTIN/lot/serial) at render time.

Response

OK

A product link as read from the API. Mirrors :class:apps.products.models.ProductLink.

id
string<shortuuid>
required

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).

Required string length: 22
Pattern: ^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$

GS1 Web Vocabulary link-type CURIE, e.g. gs1:promotion, gs1:loyaltyProgram, gs1:homepage. Validated against the live GS1 Web Vocabulary link-type set — an unknown or resolver-only CURIE (gs1:defaultLink, gs1:handledBy, …) is rejected with 422.

Maximum string length: 64
url
string
required

Destination URL. May include {gtin}/{lot}/{serial} substitution tokens to prefill the brand's page from the scan context when use_ai_substitution is set.

Maximum string length: 2048
order
integer
required

Display order within the link type's group on the hosted page (ascending).

Required range: x >= 0
use_ai_substitution
boolean
required

When set, treat url as a template and inject the scanned GS1 AIs (GTIN/lot/serial) at render time.

anchor
string
required

Hosted-page fragment anchor this link's group renders under.

display_label
string
required

Label to render — the explicit label, else the link type's title.

created
string<date-time>
required

Server-side ISO 8601 timestamp of creation (UTC).

modified
string<date-time>
required

Server-side ISO 8601 timestamp of last modification (UTC).

product_id
string<shortuuid> | null

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).

Required string length: 22
Pattern: ^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$
brand_id
string<shortuuid> | null

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).

Required string length: 22
Pattern: ^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$
label
string
default:""

Link label shown on the hosted page. Defaults to the GS1 link type's title when blank.

Maximum string length: 120
description
string
default:""

Optional longer description shown alongside the link.