← Back to Skills Marketplace
rhino88

Real-time Amazon Data

by rhino88 · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
1419
Downloads
2
Stars
5
Active Installs
1
Versions
Install in OpenClaw
/install amazon-data
Description
Retrieve Amazon product data including pricing, reviews, sales estimates, stock levels, search results, deals, and more via the Canopy API REST endpoints usi...
README (SKILL.md)

Amazon Data Skill

Use this skill to retrieve Amazon product data via the Canopy API REST endpoints using Python.

Canopy API provides real-time access to 350M+ Amazon products across 25K+ categories. With this skill you can fetch:

  • Product details — titles, descriptions, pricing, images, feature bullets, and brand info
  • Sales and stock estimates — weekly, monthly, and annual unit sales alongside current stock levels
  • Reviews — ratings, review text, verified purchase status, and helpful vote counts
  • Search — find products by keyword with filters for price, condition, category, and sort order
  • Offers — compare pricing and fulfillment details across multiple sellers
  • Deals — browse current Amazon deals and discounts across 12 international domains
  • Categories — navigate the full Amazon category taxonomy
  • Sellers and authors — look up seller profiles, ratings, and author bibliographies

Setup

  1. Sign up and create an account at canopyapi.co
  2. Get an API key from your dashboard
  3. Set the API key in your environment:
export API_KEY="your_api_key_here"

Base URL

https://rest.canopyapi.co

Authentication

All requests require the API-KEY header:

import os
import requests

API_KEY = os.environ["API_KEY"]
BASE_URL = "https://rest.canopyapi.co"
HEADERS = {"API-KEY": API_KEY}

Endpoints

Get Product Information

response = requests.get(f"{BASE_URL}/api/amazon/product", headers=HEADERS, params={
    "asin": "B01HY0JA3G",  # or use "url" or "gtin"
    "domain": "US",         # optional, defaults to "US"
})

Returns product title, brand, price, rating, images, feature bullets, categories, and seller info.

Get Product Variants

response = requests.get(f"{BASE_URL}/api/amazon/product/variants", headers=HEADERS, params={
    "asin": "B01HY0JA3G",
})

Get Stock Estimates

response = requests.get(f"{BASE_URL}/api/amazon/product/stock", headers=HEADERS, params={
    "asin": "B01HY0JA3G",
})

Get Sales Estimates

response = requests.get(f"{BASE_URL}/api/amazon/product/sales", headers=HEADERS, params={
    "asin": "B01HY0JA3G",
})

Returns weekly, monthly, and annual unit sales estimates.

Get Product Reviews

response = requests.get(f"{BASE_URL}/api/amazon/product/reviews", headers=HEADERS, params={
    "asin": "B01HY0JA3G",
})

Get Product Offers

response = requests.get(f"{BASE_URL}/api/amazon/product/offers", headers=HEADERS, params={
    "asin": "B01HY0JA3G",
    "page": 1,  # optional
})

Search Products

response = requests.get(f"{BASE_URL}/api/amazon/search", headers=HEADERS, params={
    "searchTerm": "wireless headphones",
    "domain": "US",          # optional
    "page": 1,               # optional
    "limit": 20,             # optional, 20-40
    "minPrice": 10,          # optional
    "maxPrice": 100,         # optional
    "conditions": "NEW",     # optional: NEW, USED, RENEWED (comma-separated)
    "sort": "FEATURED",      # optional: FEATURED, MOST_RECENT, PRICE_ASCENDING, PRICE_DESCENDING, AVERAGE_CUSTOMER_REVIEW
})

Get Autocomplete Suggestions

response = requests.get(f"{BASE_URL}/api/amazon/autocomplete", headers=HEADERS, params={
    "searchTerm": "wireless",
})

Get Category Taxonomy

response = requests.get(f"{BASE_URL}/api/amazon/categories", headers=HEADERS, params={
    "domain": "US",  # optional
})

Get Category Information

response = requests.get(f"{BASE_URL}/api/amazon/category", headers=HEADERS, params={
    "categoryId": "1234567890",
    "domain": "US",          # optional
    "page": 1,               # optional
    "sort": "FEATURED",      # optional
})

Get Seller Information

response = requests.get(f"{BASE_URL}/api/amazon/seller", headers=HEADERS, params={
    "sellerId": "A2R2RITDJNW1Q6",
    "domain": "US",  # optional
    "page": 1,       # optional
})

Get Author Information

response = requests.get(f"{BASE_URL}/api/amazon/author", headers=HEADERS, params={
    "asin": "B000AQ5RM0",
    "domain": "US",  # optional
    "page": 1,       # optional
})

Get Deals

response = requests.get(f"{BASE_URL}/api/amazon/deals", headers=HEADERS, params={
    "domain": "US",  # optional: US, UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP
    "page": 1,       # optional
    "limit": 20,     # optional
})

Product Lookup Options

Product endpoints accept one of these identifiers:

Parameter Description Example
asin Amazon product ASIN B01HY0JA3G
url Full Amazon product URL https://amazon.com/dp/B01HY0JA3G
gtin ISBN, UPC, or EAN code 9780141036144

Supported Domains

US (default), UK, CA, DE, FR, IT, ES, AU, IN, MX, BR, JP

Error Handling

Status Meaning
400 Invalid parameters
401 Invalid or missing API key
402 Payment required
500 Server error
response = requests.get(f"{BASE_URL}/api/amazon/product", headers=HEADERS, params={"asin": "B01HY0JA3G"})
if response.ok:
    data = response.json()
else:
    print(f"Error {response.status_code}: {response.text}")
Usage Guidance
This skill appears to do what it says (call Canopy's Amazon endpoints), but the package metadata failed to declare the required API key. Before installing: 1) Verify the provider URL (https://canopyapi.co) and read Canopy's docs and privacy policy. 2) Ask the skill author or registry to declare the required credential (recommended primaryEnv like CANOPY_API_KEY) so the platform can manage the secret properly. 3) Use a scoped or read-only API key if possible, and avoid reusing high-privilege keys. 4) Be aware the agent will make outbound HTTPS requests to canopyapi.co; do not expose other sensitive data in those requests. 5) If you proceed, test with a limited key and rotate it if anything seems off.
Capability Analysis
Type: OpenClaw Skill Name: amazon-data Version: 1.0.0 The skill is benign. It clearly defines its purpose as retrieving Amazon product data via the Canopy API. The `SKILL.md` file instructs the AI agent to read an `API_KEY` from environment variables and make standard HTTP GET requests to `https://rest.canopyapi.co`. All described actions and code snippets are consistent with the stated purpose and do not contain any malicious prompt injection attempts, unauthorized data exfiltration, or execution of arbitrary commands. The external network calls and environment variable access are necessary for the skill's intended functionality.
Capability Assessment
Purpose & Capability
The name/description align with the instructions: the SKILL.md documents calls to Canopy's Amazon-data REST endpoints and lists relevant endpoints and parameters. The functionality requested (product, reviews, sales, stock, search, deals) is consistent with a Canopy-type API and does not ask for unrelated capabilities (cloud provider credentials, local filesystem access, etc.).
Instruction Scope
Instructions are narrowly scoped to making HTTPS requests to https://rest.canopyapi.co and handling responses in Python. The SKILL.md does not instruct the agent to read unrelated files, access other environment variables, or transmit data to third parties beyond the documented API host.
Install Mechanism
This is an instruction-only skill with no install spec and no code files, so nothing is written to disk by an installer. That lowers installation risk.
Credentials
The SKILL.md requires an API key (export API_KEY and use it as the API-KEY header), but the registry metadata lists no required environment variables and no primary credential. This mismatch is problematic: the skill needs a secret but the registry doesn't declare it. Also, the env var name used (API_KEY) is generic and may collide with other integrations; best practice would be a specific name (e.g., CANOPY_API_KEY) and the registry should declare it as the primary credential.
Persistence & Privilege
The skill does not request always:true and is user-invocable; it does not attempt to modify other skills or agent-wide settings. Autonomous invocation is allowed (platform default) but this skill does not request elevated persistence.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install amazon-data
  3. After installation, invoke the skill by name or use /amazon-data
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of the amazon-data skill. - Provides access to Amazon product data using the Canopy API via Python. - Supports retrieval of product details, pricing, reviews, sales and stock estimates, search, offers, deals, categories, sellers, and author information. - Includes setup and authentication instructions. - Lists all supported endpoints and example usage for each. - Details error handling and supported Amazon marketplaces.
Metadata
Slug amazon-data
Version 1.0.0
License
All-time Installs 5
Active Installs 5
Total Versions 1
Frequently Asked Questions

What is Real-time Amazon Data?

Retrieve Amazon product data including pricing, reviews, sales estimates, stock levels, search results, deals, and more via the Canopy API REST endpoints usi... It is an AI Agent Skill for Claude Code / OpenClaw, with 1419 downloads so far.

How do I install Real-time Amazon Data?

Run "/install amazon-data" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Real-time Amazon Data free?

Yes, Real-time Amazon Data is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Real-time Amazon Data support?

Real-time Amazon Data is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Real-time Amazon Data?

It is built and maintained by rhino88 (@rhino88); the current version is v1.0.0.

💬 Comments