Welcome

Everything you need before your first Core API call.

Welcome to the Yotpo Core API (V3)

The Yotpo Core API syncs your store's activity to Yotpo — your product catalog, customers, orders, and fulfillments — powering everything Yotpo does with that data.

📘

This API offers cross-product functionality for Yotpo Reviews and Yotpo Visual UGC.

Base URL

All V3 endpoints are scoped to your store:

https://api.yotpo.com/core/v3/stores/{store_id}

Your Store ID is part of every request path. Find it in your Yotpo admin — see App key vs. Store ID.

Authentication

Exchange your store's secret for an access token, then send it on every request in the X-Yotpo-Token header:

curl -X POST "https://api.yotpo.com/core/v3/stores/YOUR_STORE_ID/access_tokens" \
  -H "Content-Type: application/json" \
  -d '{ "secret": "YOUR_SECRET" }'

Full details in Authentication.

Rate limits

The limit is 5 requests per second per store, across all endpoints. Every response includes RateLimit-Remaining and RateLimit-Reset headers so you can throttle proactively; exceeding the limit returns 429 Too Many Requests — wait one second and retry. See Rate limiting for retry strategies and bulk-sync patterns.

Responses and errors

The API accepts and returns JSON. Errors share one consistent shape:

{
  "errors": [
    {
      "message": "external_id must be supplied"
    }
  ]
}

As a rule: 4xx means fix your request before retrying, 429 means wait a second and retry, 5xx means retry with exponential backoff. See Error handling for every status code, and Idempotency for retrying creates safely with external_id.

What you can do

Other Yotpo APIs

Product-specific functionality lives in the UGC API (Reviews and Visual UGC) and the Loyalty & Referrals API. Building a public app? See the App Developer API.

Next steps