Rexiew APIを使用すると、検索、レビュー読み込み、AI レビュー生成、人間レビュー提出、および任意のサイトへのレビューウィジェット埋め込みができます。すべてのレスポンスはJSONです。
https://rexiew.com/api
すべてのエンドポイントは、このベース 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 |
認証は不要です。
/health
API が実行中かどうか確認します。
{
"status": "ok",
"service": "Rexiew API",
"version": "1.0.0"
}
/models
すべてのLLMモデルをティア要件とアクティブ状態とともに表示します。認証済みの場合、各モデルがあなたのサブスクリプションティアでアクセス可能かどうかが含まれます。
{
"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}
商品を名前で検索します。レビュー数でソートされた最大20件の結果を返します。
| 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}
製品の詳細とすべてのレビューを取得します。
{
"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}
長所、短所、代替案、次元スコア、オンチェーン検証ステータスを含む完全なレビュー詳細を取得します。
{
"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
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
メールアドレスとパスワードで認証します。JWT アクセストークンとリフレッシュトークンを返します。
{
"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
新しいアカウントを作成します。パスワードは最低 10 文字である必要があります。
{
"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
有効なリフレッシュ トークンを新しいアクセス トークンとリフレッシュ トークンと交換します。
{
"refresh_token": "eyJ..."
}
{
"access_token": "eyJ...",
"refresh_token": "eyJ...",
"token_type": "Bearer",
"expires_in": 3600
}
/review/resolve
Auth
レビュー生成前の準備ステップ。ユーザーの入力をデータベース内の既存アイテムに解決するか、新規作成を提案します。内部的にAIモデルを使用してマッチングを行います。
{
"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
人間が作成したレビューを送信します。1日あたり1商品1ユーザーあたり1件に制限されています。オプションでウォレットアドレスを含めてBlockinity検証が可能です。
{
"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
あなたが所有している人間レビューに Provifier オンチェーン署名データを添付します。レビューを暗号学的に検証可能にします。
{
"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
認証されたユーザーのレビュー履歴をページネーション付きで取得します。
| 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
認証されたユーザーのプロフィール、クレジット残高、サブスクリプション情報を取得します。
{
"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
ブロックチェーンウォレットアドレスをアカウントにリンクしてBlockinity認証を実行します。
{
"wallet_address": "0x..."
}
{
"wallet_address": "0x...",
"linked": true
}
公開、認証不要。レスポンスは5分間キャッシュされます。外部サイトに Rexiew レビューデータを埋め込む際に使用できます。
/widget/thing/{id}/badge
軽量バッジデータ: 平均評価とレビュー数。インライン表示に最適。
{
"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
上位3件のレビュースニペットと平均次元スコアを含む概要。サイドバーウィジェットに最適です。
{
"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}
フルウィジェット ペイロード:すべてのレビュー、メリット、デメリット、代替案、多次元スコア、バッジ、オーナーの返信。
{
"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}
外部参照によってプロダクトを検索します。Rexiew プロダクト ID に独自の ID をマッピングするインテグレーションに便利です。
| 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}
製品名またはスラッグによる軽量検索。インライン表示可能なレビューカード(スマートリンク)用のコンパクトデータを返します。レビューバッジをコンテンツに埋め込むのに最適。
| 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"
}
}
単一のスクリプトタグとデータ属性を使用して、任意のウェブサイトにホバー可能なレビューカードを追加します。API キーは不要です。
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>
このスクリプトはマークされたすべての要素を自動的に検出し、Rexiew APIからレビューデータを取得し、各リンクをインラインバッジに置き換えます。ホバー(デスクトップ)またはクリック(モバイル)時に、次の情報を表示するカードがポップアップします:
<!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();
3つのAPI呼び出しであなたの最初のAIレビューを生成:
# 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}'