Skip to main content

Quick Start

Step 1: Get Your API Key

  1. Sign up at app.descripio.com
  2. Navigate to Developer → API Keys
  3. Click “Create API Key”
  4. Copy your key (starts with dscr_)
⚠️ Save your key securely. It won’t be shown again after creation.

Step 2: Trigger a Review Refresh

Replace YOUR_API_KEY with your actual key:
curl -X POST https://app.descripio.com/api/v1/reviews/refresh \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "asin": "B08N5WRWNW",
    "marketplace": "amazon.de"
  }'
Response (HTTP 202 Accepted):
{
  "jobId": 2877,
  "asin": "B08N5WRWNW",
  "status": "queued",
  "message": "Review refresh job created successfully",
  "estimatedCompletionSeconds": 60
}

Step 3: Poll Job Status (With Timeout)

Python (Recommended):
import requests
import time

API_KEY = "YOUR_API_KEY"
job_id = 2877
max_attempts = 24  # 2 minutes max (5s interval)
attempt = 0

while attempt < max_attempts:
    response = requests.get(
        f"https://app.descripio.com/api/v1/jobs/{job_id}",
        headers={"Authorization": f"Bearer {API_KEY}"}
    )
    job = response.json()

    if job["status"] == "completed":
        print("Job complete!")
        break
    elif job["status"] == "failed":
        print(f"Job failed!")
        break

    print(f"Status: {job['status']}, waiting...")
    time.sleep(5)  # Wait 5 seconds before next poll
    attempt += 1

if attempt >= max_attempts:
    print("Timeout: Job took longer than expected")
cURL (Manual polling):
curl https://app.descripio.com/api/v1/jobs/2877 \
  -H "Authorization: Bearer YOUR_API_KEY"
Response (when complete):
{
  "jobId": 2877,
  "asin": "B08N5WRWNW",
  "productTitle": "Example Product Title",
  "status": "completed",
  "createdAt": "2026-02-02T10:30:00.000Z",
  "updatedAt": "2026-02-02T10:31:05.000Z"
}

Step 4: Fetch Reviews

curl "https://app.descripio.com/api/v1/reviews?asin=B08N5WRWNW" \
  -H "Authorization: Bearer YOUR_API_KEY"
Response:
{
  "asin": "B08N5WRWNW",
  "title": "Example Product Title",
  "imageUrl": "https://m.media-amazon.com/images/...",
  "marketplace": "amazon.de",
  "reviewCount": 156,
  "reviews": [
    {
      "id": 12345,
      "amazonReviewId": "R1ABC123DEF",
      "title": "Great product!",
      "content": "I've been using this for a month and...",
      "date": "2026-01-15T00:00:00.000Z",
      "isTopReview": true,
      "country": "DE",
      "scrapedAt": "2026-02-02T10:31:00.000Z"
    }
  ],
  "lastScraped": "2026-02-02T10:31:00.000Z",
  "cached": true
}

Next Steps