Met de Rexiew API kunt u dingen zoeken, reviews lezen, AI-reviews genereren, menselijke reviews indienen en reviewwidgets op elke site insluiten. Alle reacties zijn in JSON-indeling.
https://rexiew.com/api
Alle eindpunten zijn relatief ten opzichte van deze basis-URL.
Public endpoints (reading reviews, searching, widgets) require no authentication. Endpoints that create or modify data require a JWT Bearer token.
To get a token, call POST /auth/login with your email and password. Include the token in subsequent requests:
Authorization: Bearer <access_token>
Access tokens expire after 1 hour. Use POST /auth/refresh with your refresh token to get a new one.
Errors return a JSON object with an error field and an appropriate HTTP status code.
{
"error": "Invalid model_id"
}
| Code | Meaning |
|---|---|
| 400 | Bad request / validation error |
| 401 | Unauthorized / invalid token |
| 402 | Insufficient credits |
| 403 | Forbidden / tier too low |
| 404 | Resource not found |
| 409 | Conflict (duplicate) |
| 410 | Model retired |
| 429 | Rate limit exceeded |
| 502 | Upstream LLM error |
Geen authenticatie vereist.
/health
Controleer of de API actief is.
{
"status": "ok",
"service": "Rexiew API",
"version": "1.0.0"
}
/models
Geef een overzicht van alle LLM-modellen met tier-vereisten en actieve status. Bij authenticatie toont het welke modellen toegankelijk zijn voor je abonnementsniveau.
{
"models": [
{
"id": 19,
"slug": "claude-opus-4-6",
"name": "Claude Opus 4.6",
"description": "The most powerful Claude LLM model.",
"provider": "anthropic",
"cost": 1,
"active": true
}
],
"user_tier": "free"
}
/things/search?q={query}
Zoek things op naam. Retourneert maximaal 20 resultaten gesorteerd op beoordelingaantal.
| Param | Type | Description |
|---|---|---|
q | string | Search query (min 2 chars) |
{
"things": [
{
"id": 42,
"name": "iPhone 16 Pro",
"type": "product",
"review_count": 7,
"avg_rating": 4.3
}
]
}
/things/{id}
Haal de details en alle reviews van iets op.
{
"thing": {
"id": 42,
"name": "iPhone 16 Pro",
"type": "product",
"review_count": 7,
"avg_rating": 4.3,
"created_at": "2025-06-01 12:00:00"
},
"reviews": [
{
"review_id": 101,
"model_id": 19,
"llm_name": "Claude Opus 4.6",
"rating": 4.5,
"review": "The iPhone 16 Pro represents...",
"created_at": "2025-06-02 09:30:00"
}
]
}
/review/{id}
Haal volledige reviewdetails op, inclusief voor- en nadelen, alternatieven, dimensionale scores en on-chain verificatiestatus.
{
"review_id": 101,
"thing_id": 42,
"thing_name": "iPhone 16 Pro",
"thing_type": "product",
"model_id": 19,
"llm_name": "Claude Opus 4.6",
"reviewer_type": "ai",
"review_aspect": "general",
"rating": 4.5,
"review": "The iPhone 16 Pro represents...",
"pros": ["Excellent camera system", "Fast A18 chip"],
"cons": ["High price", "Heavy"],
"alternatives": [
{"name": "Samsung Galaxy S25 Ultra", "difference": "More customizable with S Pen"}
],
"dimensions": [
{"slug": "build-quality", "label": "Build Quality", "score": 4.8}
],
"blockinity_verified": false,
"provifier_tx_digest": null,
"created_at": "2025-06-02 09:30:00"
}
/review/{id}/verify
Verifieer het on-chain bewijs van een ondertekende menselijke review via Provifier.
{
"verified": true,
"tx_digest": "ABC123...",
"chain": "sui",
"data_hash": "sha256...",
"explorer_url": "https://suiscan.xyz/mainnet/tx/ABC123..."
}
These endpoints require a JWT Bearer token in the Authorization header.
/auth/login
Verifieer met e-mailadres en wachtwoord. Retourneert JWT access en refresh tokens.
{
"email": "user@example.com",
"password": "yourpassword"
}
{
"access_token": "eyJ...",
"refresh_token": "eyJ...",
"token_type": "Bearer",
"expires_in": 3600,
"user": {
"id": 1,
"email": "user@example.com",
"role": "user",
"credit_balance": 500
}
}
/auth/register
Maak een nieuw account aan. Wachtwoord moet minimaal 10 tekens lang zijn.
{
"email": "newuser@example.com",
"password": "securepassword"
}
{
"access_token": "eyJ...",
"refresh_token": "eyJ...",
"token_type": "Bearer",
"expires_in": 3600,
"user": {
"id": 2,
"email": "newuser@example.com",
"role": "user",
"credit_balance": 0
}
}
/auth/refresh
Wissel een geldige vernieuwingstoken in voor nieuwe toegangs- en vernieuwingstokens.
{
"refresh_token": "eyJ..."
}
{
"access_token": "eyJ...",
"refresh_token": "eyJ...",
"token_type": "Bearer",
"expires_in": 3600
}
/review/resolve
Auth
Voorbereidingsstap voordat een review wordt gegenereerd. Zet de invoer van de gebruiker om naar een bestaand item in de database of stelt voor om een nieuw item aan te maken. Gebruikt intern een AI-model voor matching.
{
"thing_name": "iPhone 16 Pro",
"thing_type": "product"
}
{
"resolved": {
"match": true,
"thing_id": 42,
"thing_name": "iPhone 16 Pro",
"thing_type": "product",
"thing_slug": "iphone-16-pro",
"review_count": 7,
"avg_rating": 4.3
},
"candidates": [...],
"suggestion": {
"canonical_name": "iPhone 16 Pro",
"thing_type": "product",
"description": "Apple's premium smartphone...",
"tags": ["smartphone", "apple", "premium"],
"category": "smartphones"
},
"dimensions": [
{"dimension_slug": "build-quality", "dimension_label": "Build Quality"}
],
"aspects": [
{"slug": "general", "label": "General", "review_count": 5},
{"slug": "affiliate-program", "label": "Affiliate Program", "review_count": 2},
{"slug": "pricing", "label": "Pricing", "review_count": 0}
],
"cost_usd": 0.002,
"elapsed_ms": 1200
}
/review/generate
Auth
Generate an AI review for a thing. Costs 1 credit per review. Active models: Claude Opus 4.6 (ID 19) and GPT 5.4 (ID 25).
{
"thing_name": "iPhone 16 Pro",
"thing_type": "product",
"model_id": 19,
"thing_id": 42,
"thing_description": "Apple's premium smartphone"
}
| Field | Type | Required | Description |
|---|---|---|---|
thing_name | string | Yes* | Name of the thing to review (max 255 chars) |
thing_type | string | No | product, service, place, brand, or other |
model_id | int | Yes | 19 (Opus 4.6) or 25 (GPT 5.4) |
thing_id | int | No | If provided, skips resolver and uses this thing directly |
thing_description | string | No | Description override for new things (max 255 chars) |
review_aspect | string | No | Aspect to focus on (e.g. "affiliate-program", "pricing"). Defaults to "general" |
* Required if thing_id is not provided.
{
"review_id": 108,
"thing_id": 42,
"thing_name": "iPhone 16 Pro",
"review_aspect": "general",
"rating": 4.5,
"review": "The iPhone 16 Pro represents...",
"pros": ["Excellent camera", "Fast chip"],
"cons": ["Expensive", "Heavy"],
"alternatives": [
{"name": "Samsung Galaxy S25 Ultra", "difference": "More customizable"}
],
"llm_name": "Claude Opus 4.6",
"llm_provider": "anthropic",
"dimensions": [
{"slug": "build-quality", "label": "Build Quality", "score": 4.8}
],
"credits_spent": 1,
"tokens": {"input_tokens": 850, "output_tokens": 620},
"cost_usd": 0.059,
"elapsed_ms": 8500
}
/review/human
Auth
Dien een door mens geschreven beoordeling in. Beperkt tot 1 per thing per gebruiker per dag. Voeg optioneel een portefeuille-adres toe voor Blockinity-verificatie.
{
"thing_id": 42,
"rating_score": 4.5,
"review_text": "I've used the iPhone 16 Pro for 3 months now...",
"review_aspect": "general",
"dimension_scores": {
"build-quality": 4.8,
"value-for-money": 3.5
},
"wallet_address": "0x..."
}
{
"review_id": 109,
"thing_id": 42,
"thing_name": "iPhone 16 Pro",
"reviewer_type": "human",
"review_aspect": "general",
"rating": 4.5,
"review": "I've used the iPhone 16 Pro for 3 months now...",
"dimensions": [
{"slug": "build-quality", "label": "Build Quality", "score": 4.8}
],
"blockinity_verified": true,
"canonical_data": "{...}"
}
/review/{id}/sign
Auth
Voeg Provifier on-chain handtekeningsgegevens toe aan een menselijke review die je bezit. Maakt de review cryptografisch verifieerbaar.
{
"tx_digest": "ABC123...",
"data_hash": "sha256...",
"chain": "sui"
}
{
"review_id": 109,
"signed": true,
"tx_digest": "ABC123...",
"chain": "sui",
"data_hash": "sha256..."
}
/review/history?page=1&limit=20
Auth
Haal de reviewgeschiedenis van de geverifieerde gebruiker op, gepagineerd.
| Param | Type | Default | Description |
|---|---|---|---|
page | int | 1 | Page number |
limit | int | 20 | Results per page (max 50) |
{
"reviews": [...],
"total": 45,
"page": 1,
"limit": 20,
"pages": 3
}
/user/profile
Auth
Haal het profiel van de geverifieerde gebruiker, tegoedsaldo en abonnementsgegevens op.
{
"user": {
"id": 1,
"email": "user@example.com",
"role": "user",
"credit_balance": 500,
"member_since": "2025-01-15 10:00:00",
"total_reviews": 23,
"wallet_address": null
}
}
/auth/wallet-link
Auth
Koppel een blockchainwalletadres aan uw account voor Blockinity-verificatie.
{
"wallet_address": "0x..."
}
{
"wallet_address": "0x...",
"linked": true
}
Openbaar, geen authenticatie vereist. Reacties worden 5 minuten lang in cache opgeslagen. Gebruik deze om Rexiew-reviewgegevens op externe websites in te sluiten.
/widget/thing/{id}/badge
Lichte badgegegevens: gemiddelde beoordeling en aantal reviews. Ideaal voor inline weergave.
{
"thing_id": 42,
"name": "iPhone 16 Pro",
"avg_rating": 4.3,
"review_count": 7,
"branding": {
"text": "Powered by Rexiew",
"url": "https://rexiew.com/thing/iphone-16-pro",
"logo": "https://rexiew.com/img/favicon/favicon-32x32.png"
}
}
/widget/thing/{id}/summary
Samenvatting met top 3 reviewfragmenten en gemiddelde dimensionale scores. Geschikt voor zijbalkwidgets.
{
"thing_id": 42,
"name": "iPhone 16 Pro",
"type": "product",
"avg_rating": 4.3,
"review_count": 7,
"dimensions": [
{"label": "Build Quality", "score": 4.8}
],
"snippets": [
{
"review_id": 101,
"llm_name": "Claude Opus 4.6",
"rating": 4.5,
"snippet": "The iPhone 16 Pro represents a significant...",
"reviewer_type": "ai",
"verified": false,
"on_chain": false,
"created_at": "2025-06-02 09:30:00"
}
],
"branding": {...}
}
/widget/thing/{id}
Volledige widgetpayload: alle reviews met voor- en nadelen, alternatieven, dimensies, badges en eigenaar reacties.
{
"thing_id": 42,
"name": "iPhone 16 Pro",
"type": "product",
"website": "https://apple.com/iphone-16-pro",
"avg_rating": 4.3,
"review_count": 7,
"dimensions": [...],
"reviews": [
{
"review_id": 101,
"model_id": 19,
"llm_name": "Claude Opus 4.6",
"rating": 4.5,
"review": "...",
"pros": ["..."],
"cons": ["..."],
"alternatives": [...],
"reviewer_type": "ai",
"badges": ["ai"],
"dimensions": [
{"label": "Build Quality", "score": 4.8}
],
"created_at": "2025-06-02 09:30:00"
}
],
"branding": {...}
}
/widget/lookup?source={source}&external_id={id}
Zoek een item via externe referentie. Handig voor integraties die hun eigen IDs toewijzen aan Rexiew thing IDs.
| Param | Type | Description |
|---|---|---|
source | string | Integration source (e.g. "d1rectory") |
external_id | string | External ID in the source system |
{
"thing_id": 42
}
/widget/smartlink?q={name}
Lichte zoekopdracht op dingsnaam of slug. Geeft compacte gegevens terug voor inline zwevende reviewkaarten (smartlinks). Ideaal voor het insluiten van reviewbadges in inhoud.
| Param | Type | Description |
|---|---|---|
q | string | Thing name (exact match, then fuzzy fallback) |
slug | string | Thing slug (alternative to q) |
Provide either q or slug, not both.
{
"thing_id": 42,
"name": "iPhone 16 Pro",
"slug": "iphone-16-pro",
"type": "product",
"description": "Apple's premium smartphone with...",
"avg_rating": 4.3,
"review_count": 7,
"snippet": {
"llm_name": "Claude Opus 4.6",
"rating": 4.5,
"text": "The iPhone 16 Pro represents a significant..."
},
"url": "https://rexiew.com/thing/iphone-16-pro",
"branding": {
"text": "Powered by Rexiew",
"url": "https://rexiew.com/thing/iphone-16-pro",
"logo": "https://rexiew.com/img/favicon/favicon-32x32.png"
}
}
Voeg zwevende reviewkaarten toe aan elke website met één scripttag en data-attributen. Geen API-sleutel nodig.
Include the smartlink widget script on your page (ideally before </body>):
<script src="https://rexiew.com/widget/smartlink.js" defer></script>
Use data-rexiew (slug) or data-rexiew-q (name) on any element:
<!-- By slug (recommended, stable) --> <a data-rexiew="iphone-16-pro">iPhone 16 Pro</a> <!-- By name (flexible, fuzzy matching) --> <a data-rexiew-q="Tesla Model 3">Tesla Model 3</a>
Het script vindt automatisch alle gemarkeerde elementen, haalt reviewgegevens op uit de Rexiew API en vervangt elke link door een inline badge. Bij aanwijzen (bureaublad) of klikken (mobiel) verschijnt een kaart met:
<!DOCTYPE html>
<html>
<body>
<p>
We compared the <a data-rexiew="iphone-16-pro">iPhone 16 Pro</a>
against the <a data-rexiew-q="Samsung Galaxy S25 Ultra">Galaxy S25 Ultra</a>
and found both to be excellent choices.
</p>
<script src="https://rexiew.com/widget/smartlink.js" defer></script>
</body>
</html>
For single-page apps that add content dynamically, call RexiewSmartlink.init() after inserting new elements:
// After dynamically adding data-rexiew elements
RexiewSmartlink.init();
Genereer je eerste AI-review in 3 API-aanroepen:
# 1. Login curl -X POST https://rexiew.com/api/auth/login \ -H "Content-Type: application/json" \ -d '{"email":"you@example.com","password":"yourpassword"}' # 2. Resolve the thing (optional pre-step) curl -X POST https://rexiew.com/api/review/resolve \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"thing_name":"iPhone 16 Pro","thing_type":"product"}' # 3. Generate review with Claude Opus 4.6 curl -X POST https://rexiew.com/api/review/generate \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"thing_name":"iPhone 16 Pro","thing_type":"product","model_id":19}'