Shopify Product Recommendations API
The related or complementary products a store shows beside one product.
GET /v1/shopify/products/{handle}/recommendations1 credit Failed requests are free
About this endpoint
GET /v1/shopify/products/{handle}/recommendations?store=… returns data.products as product summaries, plus intent set to related or complementary. Pass intent=complementary for cross-sell suggestions, or omit it for related items.
The list can be empty when the store has no recommendation configured for that product. A missing product handle returns not_found with an empty list.
Shopify Product Recommendations API FAQ
What is the difference between related and complementary?
Related products are alternatives or items from the same category. Complementary products are add-ons the store suggests with the product.
Can the list be empty?
Yes. A store may have no recommendation for that product. The answer is still found.
Do I get full product detail?
No. The list returns product summaries. Call the product route for variants, media and stock detail.
How do I name the store?
The store is the domain, for example allbirds.com, www.allbirds.com or weareallbirds.myshopify.com. A full URL is reduced to its host.
How is it billed?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
What does lookupStatus mean?
found means the lookup succeeded. not_found means the store or entity does not exist or is not a Shopify store. private means the storefront is password-protected. restricted means it is paused or frozen. HTTP 200 only means the request finished, so branch on lookupStatus.