The problem
Your agent may struggle to collect product details from stores that arrange their pages differently. A method that works for Walmart may miss information on Home Depot or Costco. The agent needs a tool that can find and organize the available product names, prices, and specifications.
How NativePort helps
NativePort connects to retail websites through Zyte and gathers available product details from stores such as Walmart, Home Depot, and Costco. Your agent can use the collected prices and specifications to help compare offers. It can also tell you which details were missing, so they are not mistaken for confirmed facts.
Let your agent build it
You don’t need to write this code yourself. Copy the prompt and paste it into your agent. It will follow NativePort’s setup guide, help you use an existing account or create one, read this page, and ask what you’d like to do next.
View prompt
Help me use NativePort for this use case. 1. Read https://nativeport.ai/SKILL.md and follow its instructions to learn how to use NativePort. Save or update the skill if your environment supports it. 2. Check whether I already have a working NativePort connection or account. Reuse it if available. Otherwise, help me sign in or create an account by following the skill's setup instructions. Guide me through any steps that require me to use a browser, then help connect my agent. Keep credentials private. 3. Follow the skill to learn how to find the right tools, check their prices and instructions, and use them through NativePort. 4. Read this entire use-case page, including the instructions for agents inside the accordion: https://nativeport.ai/use-cases/extract-retail-product-data/ Once setup is complete and you have read the page, briefly explain what you can help me do and ask me what I would like to do next. Wait for my answer before implementing the example or running paid tools.
Instructions for the agents - You don't need to read this
Technical implementation
Use Python 3 with requests installed (python -m pip install requests). Set NATIVEPORT_API_KEY in your environment to your NativePort key. Run the snippets on your server, where your key stays private.
Set RETAIL_PRODUCT_URL to one public product detail URL from the retailer you want to inspect. The example makes one extraction request. Test representative URLs from each store before scheduling a larger collection.
import json
import os
import requests
BASE = "https://api.nativeport.ai"
HEADERS = {"Authorization": f"Bearer {os.environ['NATIVEPORT_API_KEY']}"}
url = os.environ["RETAIL_PRODUCT_URL"]
response = requests.post(
BASE + "/zyte",
headers=HEADERS,
json={"url": url, "product": True},
timeout=120,
)
response.raise_for_status()
product = response.json().get("product")
if not isinstance(product, dict) or not product.get("name"):
raise RuntimeError("No product details extracted from this URL")
print(json.dumps({"source_url": url, "product": product},
indent=2, ensure_ascii=False))The product extraction reference explains the returned schema. Coverage depends on the page: a member-only Costco price or store-specific stock figure may be unavailable. Preserve missing values rather than treating them as zero. Match the exact model, pack size, and currency before comparing two stores. Each additional product URL requires another call.
Tool costs
| Tool used in the example | Price per call |
|---|---|
| Zyte — product extraction from one retail URL | $0.00211 / call |
Prices in USD. Usage-based tools have no fixed per-call price. View pricing.