Run single or bulk stock checks, or request product information snapshots with source, method, cache age, and idempotency controls.
Platform
Built for product teams that need reliable data workflows, not another scraping project.
Product Information API combines direct request/response access, managed product tracking, account usage visibility, and a customer app for token and product operations.
Register products once, refresh stock or product information on demand, review history, and follow asynchronous operations.
Expose remaining credits, recent usage rows, retry guidance, and charged outcomes to finance and engineering stakeholders.
Client codes, actor identity, scopes, token prefixes, and product ownership stay separated across every API and app request.
Start with a scoped integration token, add products in bulk, hand the app to operators, and keep technical setup focused.
The marketing and docs site stays static at the apex domain while customer sessions live on the dedicated app host.
Workflow
From first token to monitored catalog.
Use the app to issue a scoped integration token for engineering and rotate it when required.
Check live stock or product information for one item or a controlled bulk batch.
Add products to the customer app workflow for repeat refreshes, history, and status changes.
Review remaining credits and recent request outcomes before increasing volume.
Pricing
Commercial plans for launches, growing catalogs, and enterprise data operations.
Checkout and billing portal URLs are not configured in this repo yet, so payment actions below route to sales until Stripe links are added.
Launch
For teams validating suppliers, catalog coverage, and data freshness.
- Direct API access
- Scoped integration token
- Usage visibility
- Email onboarding
Scale
For teams running bulk checks and managed product monitoring.
- Bulk scrape requests
- Product monitoring workflows
- Token rotation support
- Priority onboarding review
Enterprise
For multi-team programs that need governance, rollout planning, and high-volume controls.
- Dedicated implementation plan
- Account-level access design
- Custom credit packaging
- Commercial review
Stripe checkout and customer portal placeholders are intentionally non-live here. Add real checkout and portal links when the billing account is configured.
Technical docs
Currently available endpoints.
The direct API base URL is https://api.productinformationapi.com. The
customer app is hosted separately at https://app.productinformationapi.com
and uses app-owned browser sessions for /web/api/* routes.
Direct API
Use a scoped tenant API token in the Authorization header. The full
machine-readable contract is available at
OpenAPI JSON.
/v1/scrapeChecks one external ID or approved product URL for stock or product information. Supports source, method, maxAgeS, and idempotency.
/v1/scrape/bulkRuns the same direct scrape workflow for an array of items. Each item can use externalId or url.
/v1/usageReturns remaining credits plus recent usage rows. Optional recent query range is 1 to 100.
Customer app API
These routes are available behind the customer app session. Unsafe methods require the app CSRF header that matches the app CSRF cookie.
/web/auth/configReturns configured login and signup URLs for the customer app shell.
/web/auth/loginStarts configured customer identity-provider login.
/web/auth/loginAccepts a customer identity token and creates an app session.
/web/auth/callbackCompletes the authorization-code callback and redirects into the app.
/web/auth/logoutClears the app session cookie.
/web/api/sessionReturns email, subject, active client code, and role for the authenticated customer.
/web/api/session/selectSwitches the active client code after membership is resolved.
/web/api/scrapeRuns the same one-product direct scrape through the customer session.
/web/api/scrape/bulkRuns bulk direct scrape through the customer session.
/web/api/usageReturns credit and recent usage data for the active client.
/web/api/tokensReturns token metadata and prefixes for the active client.
/web/api/tokensCreates a new scoped token for direct API calls.
/web/api/tokens/{token_prefix}Revokes a token by prefix.
/web/api/tokens/{token_prefix}/rotateRotates a token and returns the replacement value once.
/web/api/productsSupports filters such as page size, page token, status, source site, and client product key.
/web/api/productsAdds a product using URL or external ID plus optional SKU, key, metadata, cadence, priority, and product-info preference.
/web/api/products/bulkSubmits multiple product create/update items with an optional idempotency key.
/web/api/products/bulk/stopStops multiple products by ID or client product key.
/web/api/products/{client_product_id}Returns one monitored product.
/web/api/products/{client_product_id}Updates mutable product fields such as status, cadence, priority, SKU, metadata, or product-info preference.
/web/api/products/{client_product_id}Stops one monitored product.
/web/api/products/{client_product_id}/stock/refreshQueues or runs a stock refresh for one product.
/web/api/products/{client_product_id}/product-infoRequests product information using the configured refresh mode.
/web/api/products/{client_product_id}/historyReturns recent stock or product information history for one product.
/web/api/operations/{request_id}Returns status and counts for an asynchronous bulk or refresh operation.
Request examples
curl -sS https://api.productinformationapi.com/v1/scrape \
-H "Authorization: $PIA_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: scrape-B0EXAMPLE1-001" \
--data '{
"source": "amazon_gb",
"method": "checkStock",
"externalId": "B0EXAMPLE1",
"maxAgeS": 120
}'
curl -sS https://api.productinformationapi.com/v1/scrape/bulk \
-H "Authorization: $PIA_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{
"source": "amazon_gb",
"method": "getProductInformation",
"idempotencyKey": "bulk-info-2026-06-26",
"items": [
{"externalId": "B0EXAMPLE1", "maxAgeS": 0},
{"externalId": "B0EXAMPLE2", "maxAgeS": 3600}
]
}'
curl -sS "https://api.productinformationapi.com/v1/usage?recent=10" \
-H "Authorization: $PIA_API_TOKEN"
fetch("https://app.productinformationapi.com/web/api/products", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-HGR-CSRF": csrfToken
},
credentials: "include",
body: JSON.stringify({
sourceSite: "amazon_gb",
externalId: "B0EXAMPLE1",
clientSku: "SKU-1001",
stockCadenceS: 3600,
productInfoPreference: "cache_then_refresh_async"
})
})
Errors and retrying
Error responses use an error object with code,
message, requestId, and retryable. Capacity
responses can include Retry-After; successful direct API responses can
include X-Credits-Remaining.
FAQ
Commercial and integration questions.
No. The apex domain serves this static landing and docs site. Customer login and app workflows stay on the dedicated app host.
Not yet in this repo. Stripe checkout and portal links are placeholders until the billing account is connected.
The public direct API currently documents /v1/scrape, /v1/scrape/bulk, and /v1/usage.
They use signed app sessions, client membership resolution, and CSRF checks for unsafe browser methods.
Contact
Plan a launch with real endpoints and controlled volume.
Send your source sites, expected monthly checks, product information needs, and preferred onboarding date.