Pular para o conteúdo

Operações dos servidores da conta

GET /cloud/operations

Escopo do token: servers:read. Recurso: Operações.

Deploys, reinstalações, apagamentos e remoções, na ordem em que foram pedidos; server_id filtra um servidor, external_id e end_customer_ref os servidores com essas referências (as atuais de cada servidor). As operações de um servidor removido continuam legíveis. Paginação por cursor opcional.

Os exemplos leem o token da variável de ambiente HALVER_API_TOKEN (um token sc_live_… criado em Desenvolvedores › Tokens de API). Nunca escreva o token no código.

Janela do terminal
curl "https://dash.halver.com.br/api/v1/cloud/operations?limit=50" \
-H "Authorization: Bearer $HALVER_API_TOKEN"
  • limit integer

    Tamanho da página, de 1 a 100. Com limit ou cursor a resposta é uma página em ordem de criação (mais antigo primeiro, depois o id) e next_cursor aponta a próxima; sem os dois vem a lista inteira, na ordem de sempre, com next_cursor nulo (compatibilidade). Com cursor e sem limit, páginas de 50. De 1 a 100. Veja Paginação.

  • cursor string

    O next_cursor da página anterior desta mesma lista (opaco; 400 invalid_cursor se não for). Até 200 caracteres. Veja Paginação.

  • external_id string

    Id do pedido no sistema do revendedor, o external_id do servidor. Formato: ^[A-Za-z0-9._:-]{1,128}$.

  • end_customer_ref string

    Id do cliente final no sistema do revendedor, o end_customer_ref do servidor. Formato: ^[A-Za-z0-9._:-]{1,128}$.

  • server_id string (uuid)

Operações.

Campos da resposta
  • items array de object obrigatório
    • error string obrigatório

      Resumo da etapa que falhou (vazio sem falha).

    • finished_at string (date-time) obrigatório pode ser nulo
    • id string (uuid) obrigatório
    • requested_at string (date-time) obrigatório
    • server_id string (uuid) obrigatório
    • started_at string (date-time) obrigatório pode ser nulo
    • status string obrigatório

      Um de: pending, running, succeeded, failed.

    • steps array de object obrigatório
      • finished_at string (date-time) obrigatório pode ser nulo
      • message string obrigatório
      • name string obrigatório

        Um de: prepare, erase, install, configure, reboot, ready, release.

      • started_at string (date-time) obrigatório pode ser nulo
      • status string obrigatório

        Um de: pending, running, done, failed.

    • type string obrigatório

      Um de: deploy, reinstall, wipe, delete.

  • next_cursor string obrigatório pode ser nulo
Exemplo de resposta
{
"items": [
{
"error": "",
"finished_at": null,
"id": "38b54c25-1f8d-40fe-8cb1-649ddb710f23",
"requested_at": "2026-10-20T18:00:00Z",
"server_id": "307d7f63-0f00-4d4b-bc28-839d359e13a3",
"started_at": null,
"status": "succeeded",
"steps": [
{
"finished_at": null,
"message": "",
"name": "prepare",
"started_at": null,
"status": "done"
}
],
"type": "deploy"
}
],
"next_cursor": null
}

Todo erro vem como application/problem+json (RFC 9457), com um code estável, a mensagem em português em detail, o motivo de cada campo em errors (nos erros de validação) e o request_id, que você informa ao suporte. Veja a lista completa de códigos.

Status Quando Códigos
400 Requisição inválida (JSON malformado, campo desconhecido, parâmetro inválido ou falha de validação). validation_failed, invalid_cursor
401 Não autenticado (token ausente, inválido ou expirado; credenciais inválidas). auth.unauthorized
403 Autenticado, mas sem permissão para a área ou a operação. api_token.insufficient_scope
Exemplo de erro
{
"type": "about:blank",
"title": "Forbidden",
"status": 403,
"detail": "o token não tem o escopo servers:read; crie um token com esse escopo em Desenvolvedores › Tokens de API",
"code": "api_token.insufficient_scope",
"request_id": "6f1c0b2a9e4d7c3b5a8f0e1d"
}