Requires a plan that includes API Access.
Base URL
Quick example
Recommended app flow
1
Load settings at startup
Call
GET /settings once, and again when the shopper changes language. It returns the merchant’s text, wishlist mode (single or multiple lists), page sizes and plan features. Use them to match your UI to the store.2
Identify the shopper
Send
X-Shopify-CustomerId for a logged-in customer, or X-Shopify-SessionId for a guest. See Authentication.3
Show the heart state on product pages
GET /products/{productId}/wishlists tells you which lists contain the product.4
Save from the picker
PUT /products/{productId}/wishlists sends the final state of the picker in one call: lists ticked, lists unticked and new lists.5
Merge guest lists at login
When a guest logs in, call
POST /guest-wishlists/claim with both IDs.Conventions
Showing messages to shoppers
Write responses and errors include amessageKey. Look it up in widgetSettings from GET /settings to show the merchant’s own, translated text, and replace {placeholders} with values from messageParams. Fall back to message when the key is missing.
Machine-readable spec
The OpenAPI document is public atGET /api/v1/openapi.json. Use it to generate a client.