FoxReload API Quickstart Guide 2026 β Your First Call in 10 Minutes
This FoxReload API quickstart is written for backend developers and procurement engineers who need to integrate a wholesale digital-goods catalog into their storefront, OSS, or internal tooling. By the end of this article you will have made a real authenticated request against https://api.foxreload.com/v1/catalog and parsed the JSON response.
1. Get your API key
After your distributor account is approved (KYC + first deposit), open the FoxReload dashboard, go to Settings β API and generate a key pair: client_id and client_secret. Keys are scoped to environment β use test_ prefixed keys against the sandbox and live_ keys against production. Each key can be restricted by IP allowlist (CIDR /32 recommended).
Never commit keys to git. Store them in your secrets manager (AWS Secrets Manager, Doppler, Vault) and inject at runtime.
2. Authentication header
FoxReload uses bearer-token auth. Every request must include:
Authorization: Bearer {client_secret}
X-Client-Id: {client_id}
Accept: application/json
Requests without both headers return HTTP 401 unauthorized. Requests over plain HTTP are rejected at the edge β only TLS 1.2+ is accepted.
3. Your first curl
The simplest read endpoint is GET /v1/catalog, which returns the SKUs available to your account, filtered by your contracted regions and payment rails.
curl -X GET "https://api.foxreload.com/v1/catalog?region=TR&category=gift_card&limit=50" \
-H "Authorization: Bearer live_sk_9f2a..." \
-H "X-Client-Id: cid_8e1c..." \
-H "Accept: application/json"
A successful call returns HTTP 200 with a paginated payload:
{
"data": [
{
"sku": "psn-tr-100-try",
"name": "PlayStation Network Turkey 100 TRY",
"category": "gift_card",
"region": "TR",
"wholesale_price_usd": 2.94,
"fx_rate_lock_minutes": 15,
"stock": "available",
"fulfilment_sla_seconds": 60
}
],
"pagination": { "next_cursor": "Y3Vyc29yXzg5", "has_more": true }
}
4. Rate limits and errors
Sandbox is capped at 60 requests/minute, production at 600/minute per client_id. Exceeding the limit returns HTTP 429 with a Retry-After header in seconds. Implement exponential backoff (250ms, 500ms, 1s, 2s, 5s) and never retry on HTTP 4xx other than 408, 425, 429. Server-side errors (5xx) are safe to retry with idempotency keys.
Ready to wire this into your stack? FoxReload offers free sandbox keys, a Postman collection, and direct Slack support for integration teams β request your access at foxreload.com to start procuring digital goods at wholesale margins this week.
