Sandbox Mode
Test your integration safely without consuming live credits or affecting production data.
How to use the sandbox
Use a sandbox API key (prefix ph_test_) — all requests made with a sandbox key automatically run in sandbox mode, regardless of any other parameters. Creating your first sandbox key in the Developer Portal requires accepting the Sandbox Terms.
Authorization: Bearer ph_test_YOUR_SANDBOX_KEYWhat's available in sandbox
The sandbox catalog includes a curated subset of real data:
- All categories are available (handbags, watches, etc.)
- All brands are available
- Top models per category:
- Handbags: top 100 most popular models
- Watches: top 20 most popular families
- All children of those models — styles, cases, dials, products, variants
This covers the most common real-world items while keeping the sandbox fast and lightweight.
Sandbox behavior
| Feature | Sandbox | Live |
|---|---|---|
| Credit consumption | Tracked separately, not billed | Yes |
| Monthly credit limit | 1,000 credits/month | Based on plan |
| Catalog coverage | Subset | Full catalog |
| Vision identification | Yes (limited catalog) | Yes (full catalog) |
| Market estimates | Yes | Yes |
| Rate limits | Same as live | Based on plan |
Sandbox credits reset on the 1st of each month (UTC). When the 1,000-credit limit is reached, test-key requests return a 402 error. Switch to a live key for continued usage.
Switching to live
When you're ready for production:
- Generate a live key from Developer Dashboard → API Keys
- Replace
ph_test_withph_live_in your environment variables - That's it — the API shape is identical
# .env.development
PRICE_HERO_API_KEY=ph_test_...
# .env.production
PRICE_HERO_API_KEY=ph_live_...