cURL
curl "https://api.scrapio.dev/v1/amazon/product?asin=B08N5WRWNW&country=us" \
-H "Authorization: Bearer $SCRAPIO_API_KEY"import os, requests
resp = requests.get(
"https://api.scrapio.dev/v1/amazon/product",
headers={"Authorization": f"Bearer {os.environ['SCRAPIO_API_KEY']}"},
params={"asin": "B08N5WRWNW", "country": "us"},
)
print(resp.json()["title"], resp.json()["price"])const params = new URLSearchParams({ asin: "B08N5WRWNW", country: "us" });
const product = await fetch(`https://api.scrapio.dev/v1/amazon/product?${params}`, {
headers: { Authorization: `Bearer ${process.env.SCRAPIO_API_KEY}` },
}).then(r => r.json());
console.log(product.title, product.price);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.scrapio.dev/v1/amazon/product",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.scrapio.dev/v1/amazon/product"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.scrapio.dev/v1/amazon/product")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.scrapio.dev/v1/amazon/product")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"provider": "amazon",
"page_type": "product",
"asin": "<string>",
"title": "<string>",
"brand": "<string>",
"price": 123,
"currency": "<string>",
"availability": "<string>",
"rating": 123,
"review_count": 123,
"images": [
"<string>"
],
"bullet_points": [
"<string>"
],
"delivery": [
{
"type": "<string>",
"date": {
"by": "<string>"
}
}
],
"featured_merchant": {
"name": "<string>",
"seller_id": "<string>",
"shipped_from": "<string>",
"is_amazon_fulfilled": true
},
"buybox": {},
"category": [
{
"ladder": [
{
"name": "<string>",
"url": "<string>"
}
]
}
],
"product_details": {},
"url": "<string>"
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}Amazon
Get product details
Retrieve structured product data from an Amazon product page by ASIN or URL.
GET
/
v1
/
amazon
/
product
cURL
curl "https://api.scrapio.dev/v1/amazon/product?asin=B08N5WRWNW&country=us" \
-H "Authorization: Bearer $SCRAPIO_API_KEY"import os, requests
resp = requests.get(
"https://api.scrapio.dev/v1/amazon/product",
headers={"Authorization": f"Bearer {os.environ['SCRAPIO_API_KEY']}"},
params={"asin": "B08N5WRWNW", "country": "us"},
)
print(resp.json()["title"], resp.json()["price"])const params = new URLSearchParams({ asin: "B08N5WRWNW", country: "us" });
const product = await fetch(`https://api.scrapio.dev/v1/amazon/product?${params}`, {
headers: { Authorization: `Bearer ${process.env.SCRAPIO_API_KEY}` },
}).then(r => r.json());
console.log(product.title, product.price);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.scrapio.dev/v1/amazon/product",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.scrapio.dev/v1/amazon/product"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.scrapio.dev/v1/amazon/product")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.scrapio.dev/v1/amazon/product")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"provider": "amazon",
"page_type": "product",
"asin": "<string>",
"title": "<string>",
"brand": "<string>",
"price": 123,
"currency": "<string>",
"availability": "<string>",
"rating": 123,
"review_count": 123,
"images": [
"<string>"
],
"bullet_points": [
"<string>"
],
"delivery": [
{
"type": "<string>",
"date": {
"by": "<string>"
}
}
],
"featured_merchant": {
"name": "<string>",
"seller_id": "<string>",
"shipped_from": "<string>",
"is_amazon_fulfilled": true
},
"buybox": {},
"category": [
{
"ladder": [
{
"name": "<string>",
"url": "<string>"
}
]
}
],
"product_details": {},
"url": "<string>"
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}{
"request_id": "<string>",
"error": {
"code": "<string>",
"message": "<string>"
},
"diagnostics": {
"outcome": "failed",
"retryable": true,
"blocked": true,
"timed_out": true
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Free-text product query (asin or query required)
Minimum string length:
1Amazon ASIN to look up (asin or query required)
Minimum string length:
1Country code for localized results
Pattern:
^[a-z]{2}$Language for results
Minimum string length:
1Amazon domain suffix, e.g. com, co.uk, de
Pattern:
^[a-z]+(?:\.[a-z]+)?$Device profile to emulate
Available options:
desktop, mobile, tablet Max time to wait, in ms
Pattern:
^\d+$Response
Structured Amazon product data.
Available options:
amazon Available options:
product Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes