Skip to content
Get API key (opens in a new tab)

Storefront rendering

Render a product Rich Snippet

Returns visible product-rating HTML and matching Product JSON-LD.

GEThttps://api.widget.cevoid.com/v1/products/{productRef}/rich-snippet

Authorizations

Authorizationbearer tokenheaderrequired

Send Authorization: Bearer <key>, where the key is your publishable key.

Path parameters

productRefstringrequired

Stable Cevoid product or variant id, external product reference, URL slug, or auto with a referer.

  • Length: 1 to 256
  • Example: prd_linen_shirt

Query parameters

marketstring

Workspace market short id. When omitted, Cevoid infers the market from the referer URL.

  • Length: 1 to 128
  • Example: mar_sweden
languagestringrequired

Language used for market-specific product presentation, such as sv or en-US.

  • Length: 1 to 64
  • Example: sv-SE
refererstring<uri>

Product page URL used for auto product resolution and optional market inference.

  • Maximum length: 2048
  • Example: https://shop.example.com/products/linen-shirt

Headers

refererstring<uri>

Product page URL used when the referer query parameter is omitted.

  • Maximum length: 2048
  • Example: https://shop.example.com/products/linen-shirt

Response

200 Successful response application/json

htmlstringrequired

Visible aggregate-rating HTML rendered from the same projection snapshot as jsonLd.

  • Minimum length: 1
  • Example: <div class="cevoid-rating">Rated 4.8 out of 5 from 24 reviews</div>
jsonLdobjectrequired
Properties (11)
@contextenum<string>required

Schema.org vocabulary URL.

  • Allowed value: https://schema.org
  • Example: https://schema.org
@typeenum<string>required

Schema.org entity type.

  • Allowed value: Product
  • Example: Product
@idstring<uri>required

Canonical product entity identifier.

  • Example: https://shop.example.com/products/linen-shirt#cevoid-product
urlstring<uri>required

Canonical product page URL.

  • Example: https://shop.example.com/products/linen-shirt
namestringrequired

Market-specific product title.

  • Example: Linen Shirt
imagestring<uri>

Market-specific primary product image URL.

  • Example: https://cdn.cevoid.com/products/linen-shirt.jpg
brandobject

Product brand when available.

Properties (2)
@typeenum<string>required
  • Allowed value: Brand
  • Example: Brand
namestringrequired
  • Example: Example Apparel
skustring

Product SKU when available.

  • Example: LINEN-SHIRT-NATURAL-M
gtinstring

Global Trade Item Number when available.

  • Example: 07350012345678
mpnstring

Manufacturer Part Number when available.

  • Example: LS-NAT-M
aggregateRatingobjectrequired
Properties (5)
@typeenum<string>required
  • Allowed value: AggregateRating
  • Example: AggregateRating
ratingValuenumberrequired

Published average rating.

  • Range: 0 < x
  • Example: 4.8
ratingCountintegerrequired

Published rating count.

  • Range: 0 < x
  • Example: 24
bestRatingenum<number>required

Highest possible rating.

  • Allowed value: 5
  • Example: 5
worstRatingenum<number>required

Lowest possible rating.

  • Allowed value: 1
  • Example: 1
projectionVersionenum<number>required

Version of the authoritative review projection used for both response representations.

  • Allowed value: 1
  • Example: 1
computedAtstring<date-time>required

ISO 8601 timestamp when the authoritative review projection was computed.

  • Example: 2026-08-01T10:05:00.000Z
Response headers (7)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

Cache-Controlstring

Browser freshness is 60 seconds. Shared caches are fresh for five minutes and may serve stale content while revalidating for another five minutes. TTL is the only invalidation guarantee; moderation or removal may take up to ten minutes because no active purge is performed.

Varystring

Workspace credentials and both accepted referer header spellings are included because product and Market context may be inferred from the page URL.

400 Bad request application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

401 Unauthorized application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

404 Not found application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

422 Validation error application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

429 Too many requests application/json

additional_dataobjectrequired

Machine-readable rate-limit details.

Properties (2)
retry_after_secondsintegerrequired
  • Range: 0 <= x
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (6)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

Retry-Afterinteger

Seconds to wait before retrying the request

500 Internal server error application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available

503 Service unavailable application/json

additional_dataobject

Optional machine-readable error details.

Properties (1)
{key}any | null
statusintegerrequired

HTTP status code.

  • Example: 404
codestringrequired

Stable machine-readable error code.

  • Example: not_found
messagestringrequired

Human-readable error description.

  • Example: Resource not found
request_idstring

Request identifier for support and tracing.

  • Example: req_abc123
Response headers (5)
Cevoid-Processing-Msstring

End-to-end request processing time in milliseconds

Cevoid-Request-Idstring

Request identifier for support and tracing

RateLimit-Limitstring

Current rate limit bucket size

RateLimit-Remainingstring

Remaining requests in the current rate limit window

RateLimit-Resetinteger

Seconds until the next request token is available