Referência de endpoints

API de Revenda

Todos os endpoints retornam application/json. Erros seguem a RFC 7807 (Problem+JSON). Cada resposta traz um cabeçalho X-Request-Id para correlação com o log de auditoria do servidor.

MethodPathEscopoFinalidade
GET/v1/healthpublicHealth check sem autenticação.
GET/v1/meanyInformações da própria conta e metadados da chave API.
GET/v1/productsread:productsLista de todos os produtos listados publicamente, com preços.
GET/v1/products/{id}read:productsDetalhes do produto, incluindo opções de configuração.
POST/v1/orderswrite:ordersRealizar um pedido. Idempotency-Key obrigatório.
GET/v1/orders/{id}read:ordersStatus de um pedido próprio.
GET/v1/servicesread:servicesLista dos próprios serviços (paginada).
GET/v1/services/{id}read:servicesDetalhes de um serviço próprio.
GET/v1/services/{id}/credentialsread:credentialsCredenciais do serviço (escopo separado, registrado em auditoria).
POST/v1/services/{id}/actionswrite:servicesAção de serviço: start, stop, reboot, reinstall, suspend, unsuspend, terminate.
GET/v1/billing/balanceread:billingSaldo de crédito.
GET/v1/billing/invoicesread:billingLista das suas faturas (paginada).
GET/v1/billing/invoices/{id}/pdfread:billingPDF da fatura.
GET/v1/webhooksread:webhooksURL atual do webhook.
PUT/v1/webhookswrite:webhooksDefinir ou remover a URL do webhook.

Idempotência

POST /v1/orders e POST /v1/services/{id}/actions exigem um cabeçalho Idempotency-Key (1-80 caracteres em [A-Za-z0-9_.-]). O servidor mantém em cache a resposta e o hash do corpo por 24h; uma segunda requisição com a mesma chave e o mesmo corpo retorna a mesma resposta, enquanto uma segunda requisição com a mesma chave, porém corpo diferente, é rejeitada com 409 idempotency_conflict.

Limites de taxa

Padrão: 60 req/min (com burst de 20) e 5000/dia por chave API, mais 600 req/min por IP independentemente da chave. Em caso de excesso, HTTP 429 com cabeçalho Retry-After. Os cabeçalhos X-RateLimit-Remaining e X-RateLimit-Reset na resposta expõem o estado atual.