Skip to main content
Programmatic equivalent of the dashboard’s products/<gtin>/brand-links/ page.

When to use

  • A brand owner wants a shopper who scans the product to be offered the brand’s own pages for it: a promotion, a loyalty program, a recipe, a place to leave a review.
  • A link on file points somewhere stale and needs correcting or removing.

Auth

X-API-Key header or OAuth token. The caller must be a member of the product’s organization with the contribute role (Editor or Manager). A read-only key is refused with 403; a link or product another organization owns answers 404, so the API never confirms it exists.

Flow

  • List — every link on the product (owner_type=brand lists brand-wide links).
  • Create — the body names the owner with product_id (or brand_id for a link shown on every product of a brand) and the GS1 link_type (e.g. gs1:promotion); fields are listed in the OpenAPI document at /products/api/v1/openapi.json. url must be an http(s) address and may carry {gtin}, {lot} and {serial} substitution tokens.
  • Update — PUT only the fields to change.
  • Reorder — set the display order within a link type in one call.
  • Delete — removes one link permanently.
  • Read back — every write returns the saved link; list again to confirm.
Returns 403 for a read-only key, 404 for a link or product the caller cannot see, and 422 for an invalid value.

Notes

The fields a brand writes on a link are defined once on the model (ProductLink.BRAND_EDITABLE_FIELDS); the dashboard form and both API schemas are pinned to that set.