Endpoint reference

Reseller API

All endpoints return application/json. Errors follow RFC 7807 (Problem+JSON). Every response carries an X-Request-Id header for correlation with the server-side audit log.

MethodPathScopePurpose
GET/v1/healthpublicUnauthenticated health check.
GET/v1/meanyOwn account info + key metadata.
GET/v1/productsread:productsList of all publicly listed products with prices.
GET/v1/products/{id}read:productsProduct details including config options.
POST/v1/orderswrite:ordersPlace an order. Idempotency-Key required.
GET/v1/orders/{id}read:ordersStatus of an own order.
GET/v1/servicesread:servicesList of own services (paginated).
GET/v1/services/{id}read:servicesDetails of an own service.
GET/v1/services/{id}/credentialsread:credentialsService credentials (separate scope, audit-logged).
POST/v1/services/{id}/actionswrite:servicesService action: start, stop, reboot, reinstall, suspend, unsuspend, terminate.
GET/v1/billing/balanceread:billingCredit balance.
GET/v1/billing/invoicesread:billingList of your invoices (paginated).
GET/v1/billing/invoices/{id}/pdfread:billingInvoice PDF.
GET/v1/webhooksread:webhooksCurrent webhook URL.
PUT/v1/webhookswrite:webhooksSet or unset webhook URL.

Idempotency

POST /v1/orders and POST /v1/services/{id}/actions require an Idempotency-Key header (1-80 chars from [A-Za-z0-9_.-]). The server caches response + body hash for 24h; a second request with same key + same body returns the same response, a second request with same key but different body is rejected with 409 idempotency_conflict.

Rate limits

Default: 60 req/min (with 20-burst) and 5000/day per key, plus 600 req/min per IP independent of key. On excess, HTTP 429 with Retry-After header. Response headers X-RateLimit-Remaining and X-RateLimit-Reset expose current state.