B2B platform for digital goods

API Docs

REST reference for procurement: keys, catalog, orders by product_id, statuses, codes.

Base URL: https://public-api.foxreload.com

Quickstart in 10 minutes

Authentication

Every request passes `X-API-Key: YOUR_API_KEY`. Keys are issued in `Dashboard → API` and shown only once. You can scope a key to an IP allowlist. HTTPS required.

curl https://public-api.foxreload.com/api/products/?category_id_or_slug=steam \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Accept: application/json"

Core endpoints

MethodPathDescription
GET/api/categories/List categories (tree via parent_id_or_slug).
GET/api/products/List products in a category. The product id is the itemId for orders.
GET/api/products/searchSearch products by query.
POST/api/orders/Create an order by product_id (itemId). 1–10 items.
GET/api/orders/{order_id}Order status; codes in items[].externalData when completed.
GET/api/orders/Paginated order history with status filter.
POST/api/orders/{order_id}/payCreate a payment for an order.
POST/api/topups/crypto/Top up balance with crypto.

Creating an order

Orders are placed by `product_id` (the `itemId` field) — the public API does not expose offers. 1–10 items per order. `totalPrice` is optional: without it the current product price is used. If a product needs extra data (e.g. a player UID), pass it in `note`.

POST https://public-api.foxreload.com/api/orders/
X-API-Key: YOUR_API_KEY
Content-Type: application/json

{
  "items": [
    { "itemId": "product_01krgfgww8eth9xvvysd6y7r4j", "quantity": 5 }
  ]
}

Pulling codes

The public API has no webhooks — poll `GET /api/orders/{order_id}`. When the status turns `completed`, each `items[].externalData` array holds the product codes.

GET https://public-api.foxreload.com/api/orders/{order_id}
X-API-Key: YOUR_API_KEY

{
  "id": "order-uuid",
  "status": "completed",
  "items": [
    {
      "product": { "id": "product_01krg...", "name": "Steam 500 RUB" },
      "quantity": 5,
      "externalData": ["XXXX-YYYY-ZZZZ", "..."],
      "error": null
    }
  ]
}

Reliability

Use exponential backoff on network errors and `HTTP 429`. Check the order status before re-creating an order so you never double-buy.

Full OpenAPI 3.1 specification

https://public-api.foxreload.com/openapi.json · OpenAPI 3.1 / JSON. Compatible with swagger-ui, redoc, insomnia, postman.