This guide assumes you already have an Omneo ID Proxy token. See Shopify Authentication for how to obtain one.
Prerequisites
Initialise the SDK
Construct anID client with the token, tenant, and expiry returned from the auth flow.
client.profile.* calls are scoped to the customer the token was issued for.
Fetch a customer’s lists
Return all lists associated with the logged-in profile.lists is an array of list objects. Each list includes its id, its own handle, its list definition, items, and metadata. If the customer has no lists yet, the array is empty.
Create the wishlist on first save
Omneo does not create a list automatically. Adding an item to a list the customer does not have returns404. Create the list the first time the customer saves an item, then reuse it.
A customer can hold more than one list of the same definition, so look for an existing list before creating one. Give the list a predictable handle so your theme can address it by handle.
list_definition_id is the definition’s numeric id. Ids differ between environments, so resolve the id from the definition’s handle for each environment rather than hardcoding one value in your theme.
Add an item
Add items by variant so the customer’s chosen size or colour is saved. With the default product sync, a Shopify variant’s numeric ID is stored on the Omneo variant’sexternal_id, but external_id on a list item matches products, not variants. Send the variant’s SKU or barcode instead, or the Omneo product_variant_id.
external_id. This matches the Omneo product’s external_id. See Product List Items for every identifier.
Generate a share code
Generate a shareable handle for a list by posting to itsshares endpoint. Sharing needs the list’s definition to have allow_share enabled.
https://www.example.com/pages/shared-list?code={shareCode}.
The Profile Portal shows a customer’s lists but has no share option. To let customers share a wishlist, build the share button and the shared-list page in your theme.
Fetch a list by share code
Read a shared list through the ID Proxy’s/lists/shares/{handle} route. It works with an anonymous token from /apps/cx, so recipients who are not logged in, or have no Omneo profile, can still open the list.
title, images, price and web_url, for rendering the page. Do not call the Core API’s /v3/lists/shares/{handle} routes from the browser: they need an API token, and the version without /no_profile includes the owner’s profile.
End-to-end example
Further reading
Working with Product Lists
List creation, identifiers, and sharing behaviour.
List Definitions
Configure list types and their rules.
Shopify Authentication
How to obtain the ID Proxy token used by this guide.
Lists API reference
Endpoint-level reference for lists, items, and shares.