Zyene Reviews
DocsAPI IntegrationsPluginsAPI ReferenceCookbookChangelog
SupportDashboard

Getting Started

OverviewQuickstartUse with AI

Concepts

How Zyene WorksReview GraphContent TypesSync Networks

Reference

API ReferenceCookbook

Product

Plugins & embedsChangelog
Reference>API Reference

Developer API

JSON over HTTPS on your Zyene workspace. Examples below use https://app.zyenereviews.com, the same host as the dashboard.

Authentication

Create or rotate a key under Integrations → Developer API in the dashboard. Send it on every request as X-API-Key: zy_… or Authorization: Bearer zy_…. Each endpoint enforces the scope listed below.

Keep API keys on your server. If a request returns 403, verify the key’s scope and selected business. Contact support with the endpoint and status code if access still fails; never share the key itself.

Base URL

Point clients at the same host that serves your dashboard (for example https://app.zyenereviews.com). Use a server-side integration so your API key stays private.

Endpoints

POST/api/v1/requests/send

Send a review request via SMS or email. Required scope: review_requests:write.

bash
curl -X POST "https://app.zyenereviews.com/api/v1/requests/send" \  -H "X-API-Key: zy_..." \  -H "Content-Type: application/json" \  -d '{"customerName":"Alex","customerPhone":"+18165551234","channel":"sms"}'
GET/api/v1/reviews

List reviews with pagination and filters. Required scope: reviews:read.

bash
curl "https://app.zyenereviews.com/api/v1/reviews?page=1&limit=20&status=pending&minRating=4" \  -H "X-API-Key: zy_..."
GET/api/v1/analytics

Aggregate review and request activity. Required scope: analytics:read.

bash
curl "https://app.zyenereviews.com/api/v1/analytics?days=30" \  -H "X-API-Key: zy_..."

Responses and retries

Successful calls return success: true with a data object. Errors return success: false and an error message.

json
{"success":true,"data":{"page":1,"limit":20,"total":0,"reviews":[]}}
  • 400: Correct the payload or contact details before retrying.
  • 401: Check whether your key is missing, revoked or expired.
  • 403: Check endpoint scope, business access and sending allowances.
  • 429: Your key’s request limit was reached. Wait before retrying and use increasing delays.
  • 500/503: Retry read requests with a bounded delay; contact support if failures persist.

Pagination and metrics

Reviews use page-based pagination: page starts at 1 and limit defaults to 20, with a maximum of 100. Stop when the returned reviews are empty or page × limit reaches total. Status values are pending, responded and ignored; minRating accepts 1–5.

Analytics accepts days from 1–365. Request completion includes feedback submissions and Google handoffs. Neither completed nor the legacy reviewLeft field proves a review was published. Synced reviews are reported separately.

Sending requests

Send channel as sms (default), email, both or link. SMS requires a phone number with country code; email requires a valid address; both requires both details. Link creates a shareable request without sending a message.

The result contains requestId, status, channel and reviewLink. Check warning: for both channels, one delivery can fail while the other succeeds. A sent status is not a delivery receipt or proof of publication.

The send endpoint does not accept an idempotency key. After a timeout, check Requests in the dashboard before resending. Frequency caps help prevent repeated requests but are not a substitute for retry tracking in your integration.

Need a new key? Open Integrations in the app (you must be signed in).

On this page

AuthenticationBase URLEndpoints

Next steps

Check API ReferenceRead Quickstart