API
One HTTP API over every indexed provider. Reads need no key. Buying needs a key with the buy scope. Money is in integer micro-units of the listing currency (1 EUR = 1,000,000), excluding VAT.
https://fiery-fox-585.convex.siteSearch offers
curl "https://fiery-fox-585.convex.site/v1/offers?min_cores=16&min_ram_gb=128&nvme=1&country=DE&max_eur_month=250&sort=price"
| cpu | CPU slug, e.g. amd-epyc-7502p (see /v1/cpus) |
| vendor | amd | intel | ampere |
| arch | x86_64 | arm64 |
| provider | provider slug (see /v1/providers) |
| country | ISO country, e.g. DE |
| location | provider location code |
| market | standard | auction | clearance | spot |
| provisioning | instant | stock | build |
| min_cores · min_threads | totals across sockets |
| min_ram_gb · min_storage_gb | GB |
| min_gpus · min_port_gbps | |
| nvme · ecc · hourly · one_click | 1 to require |
| max_eur_month · max_setup_eur | EUR, headline term |
| max_delivery_hours | provider delivery signal |
| max_commitment_months | 0 = no commitment |
| include_out_of_stock | 1 to include |
| sort | price | price_per_core | cores | ram | delivery |
| limit | 1-200 |
Each offer is a full listing: cpus, memory, disks, gpus, network, location, every price term in prices, options, availability, delivery, purchase, plus totals and ourPrice (every term with our margin).
One offer, with history
curl "https://fiery-fox-585.convex.site/v1/offers/hetzner:auction-2815204:hel1"
Catalogue
curl https://fiery-fox-585.convex.site/v1/cpus # CPU models in stock, cheapest price curl https://fiery-fox-585.convex.site/v1/providers # registry: stage, inventory surface, live counts curl https://fiery-fox-585.convex.site/v1/stats # index size and last sweep per provider curl https://fiery-fox-585.convex.site/v1/delivery-times # measured order → ready minutes per provider
Buy
Buy by spec (the cheapest live match wins) or by exact offer_key. The order is re-fetched live at the provider and must match the quote 1:1 before anything is paid. Optional term picks a billing term; idempotency_key makes retries safe.
curl -X POST https://fiery-fox-585.convex.site/v1/buy \
-H "Authorization: Bearer $MX_KEY" \
-d '{
"spec": { "min_cores": 16, "min_ram_gb": 128, "nvme": true, "country": "DE", "max_eur_month": 200 },
"term": { "period": "month" },
"idempotency_key": "build-cluster-42"
}'Returns 202 with order_id and status verifying. Statuses: verifying → pending_manual | placing → placed → provisioning → ready, or failed_drift / failed / cancelled.
Orders
curl https://fiery-fox-585.convex.site/v1/orders/$ORDER_ID -H "Authorization: Bearer $MX_KEY"
Create and revoke keys in your account.
Errors
{ "error": { "code": "NO_MATCH", "message": "no live offer matches" } }
# codes: UNAUTHORIZED 401 · CREDIT_LIMIT 402 · FORBIDDEN 403 · NOT_FOUND / NO_MATCH 404 · OUT_OF_STOCK / NOT_APPROVED 409 · BAD_REQUEST 400For agents
A plain-text map of the API lives at /llms.txt. Every filter is a query parameter, every error has a machine-readable code, and buying is one idempotent POST.