Quickstart
Make your first call in two steps
Exchange your API secret for an access token on your server, then send it in the X-Yotpo-Token header on every call.
cURLServer side only
# 1. Get an access token curl -X POST "https://api.yotpo.com/core/v3/stores/YOUR_STORE_ID/access_tokens" \ -H "Content-Type: application/json" \ -d '{"secret": "YOUR_API_SECRET"}' # 2. List your products curl "https://api.yotpo.com/core/v3/stores/YOUR_STORE_ID/products?limit=5" \ -H "X-Yotpo-Token: YOUR_ACCESS_TOKEN"
Example response
{
"products": [
{ "yotpo_id": 1153559455, "external_id": "23234", "name": "Minimal Surfboard", ... }
],
"pagination": { "next_page_info": "eyJpZEN1cnNvciI6..." }
}
Build by use case
See all use cases
Recipe
Sync orders for review requests
Send an order and its fulfillment so Yotpo can ask the shopper for a review.
Recipe
Sync your catalog and customers
Create products and customers keyed by your own IDs, safe to re-run.
Recipe
Get events with webhooks
Receive review and loyalty events at your endpoint instead of polling.
Reference
Send an order in one call
Order, customer, products and fulfillments together, with missing products created for you.
Guide
Webhook events and payloads
Every review and loyalty event, with an example payload for each.
Guide
Migrate from V1
Move V1 purchase and product calls to their V3 equivalents.
More Yotpo APIs
Essentials
Authentication
Get an access token and send it in the X-Yotpo-Token header.
Errors
Every status code, the error bodies, and when to retry.
Testing your integration
Which calls email shoppers or can't be undone, and how to test safely.
Guidelines & conventions
Base URL, pagination, data formats and rate limits.
Changelog
The latest changes to the Core API and its docs.
llms.txt for AI tools
Every page and endpoint in one file for Cursor, Claude and other assistants.
