Documentation
Everything you need to integrate Get5Stars, connect your store and understand how your data is handled.
Quick start
Three ways to send your orders to Get5Stars: the one-click Shopify integration (recommended for Shopify merchants), the REST API (for any other back office) or a one-off CSV import from your dashboard.
- Shopify — install from the dashboard then OAuth, no developer required. See Shopify webhooks.
- REST API — call
POST /api/v1/orders/ingeston every new order. See REST API. - CSV import — drop a CSV from My customers to push up to 10,000 orders at once.
REST API
Base URL: https://get5stars.app. Every call is authenticated via the x-api-key header (your key is shown in Profile → API key). Limit: 100 requests / minute / key.
POST /api/v1/orders/ingest
Creates the order and schedules the initial email + the two follow-ups according to your campaign. Idempotent on (merchantId, order_id).
curl -X POST https://get5stars.app/api/v1/orders/ingest \
-H "x-api-key: $G5S_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_id": "ORD-2031",
"customer_email": "alice@example.com",
"customer_first_name": "Alice",
"customer_last_name": "Dupont",
"order_date": "2026-05-28T10:21:00Z",
"customer_locale": "fr-FR"
}'Responses
- 200 —
{ "order_id": "ORD-2031", "created": true } - 200 —
{ "order_id": "ORD-2031", "created": false }(already ingested, idempotent) - 400 — invalid payload (Zod). The body describes the offending field.
- 401 — API key missing or account suspended.
- 402 — monthly quota reached (Starter 100 / Business 500). On Scale, overage billed at +€0.02.
- 429 — rate limit exceeded (100/min/key).
Review endpoints
The /api/v1/reviews/rate and /api/v1/reviews/submit endpoints power the client-side review flow. You normally don't need to call them manually — they're used by the public review page served by Get5Stars.
Connect & test another platform
For a non-Shopify platform (WooCommerce, n8n, Zapier, custom code), send your orders to POST /api/v1/orders/ingest with your API key. Before picking a plan, verify the connection: send a test request to POST /api/v1/ping (x-api-key header). Once received, your platform is marked connected and you can activate your subscription.
Intégrez avec votre IA
Copiez un prompt prêt à coller dans Claude, ChatGPT, Cursor… Il décrit l'endpoint, le payload et les règles (sécurité, retry, idempotence) pour que votre assistant écrive tout le code d'intégration à votre place.
Shopify webhooks
After OAuth installation from your dashboard, Get5Stars automatically registers two Shopify webhooks: orders/create (triggers the review sequence) and app/uninstalled (GDPR purge). There's nothing to configure manually.
- orders/create — every new Shopify order is converted into a Get5Stars order. HMAC signature verified with your
SHOPIFY_API_SECRET. - app/uninstalled — clean uninstall: we stop emails and start the data purge within 30 days.
- shop/redact + customers/redact + customers/data_request — mandatory Shopify GDPR endpoints. Implemented and tested.
Troubleshooting
- An order isn't coming through? Check Shopify Admin → Settings → Notifications → Webhooks.
orders/createmust point tohttps://get5stars.app/api/webhooks/shopify. - Getting a 401? The HMAC secret changed — reinstall the app from your dashboard to refresh the token.
AI & data
Get5Stars uses a third-party LLM (OpenRouter) for two optional features: theme extraction from negative reviews (Business plan and up) and drafting reply suggestions (Scale plan).
Data sent to the LLM
- Themes: only the text of reviews ≤ 3★, over the selected window (7 days, 30 days or all history). No customer email, name or identifier, and no store name. Calls are incremental: only new reviews are sent, already-computed themes serve as context.
- AI replies: only the review text, its rating, and the customer's first name (for the greeting). Never your store name, nor data from other reviews.
Providers
- OpenRouter (multi-model router, San Francisco, US). Primary model: Llama 3.3 70B (Meta, free, no data retention). Fallback: Gemini 2.5 Flash Lite (Google).
- All calls are server-to-server from our workers in the CDG region (Vercel).
Retention
- OpenRouter retains no prompts by default on the « free » and « no-retention » models we use.
- Generated AI drafts are stored in your dashboard (the
aiReplyfield) until the review is deleted.
Opt out
No theme extraction runs until you open the « Themes » card in the dashboard. AI replies are generated only on demand, via the « AI reply » button in a review's detail. Contact support to fully disable LLMs on your account.