Pular para o conteúdo
Hora local do proprietário em SP:
docs / projetos / orbit / referência da api

API do Orbit

Todos os endpoints implementados, com seus campos e códigos de status.

início do desenvolvimentoreferênciacódigo-fonte ↗

Escopo

Esta página cobre os endpoints que existem no commit 2967494. A API não tem prefixo de versão, autenticação nem paginação. O servidor usa a porta padrão do Spring Boot porque a configuração não define nenhuma.

Endpoints

Método e caminhoFinalidadeSucessoOutras respostas
POST /jobsCriar um job201falha de validação
GET /jobsListar todos os jobs200nenhuma
GET /jobs/{id}Ler um job200404
PUT /jobs/{id}Substituir a configuração de um job200404, falha de validação
POST /jobs/{id}/disableDesabilitar um job200404
POST /jobs/{id}/enableHabilitar um job200404
POST /jobs/{jobId}/executionsRegistrar uma execução de um job201404 job desconhecido, 409 job desabilitado
GET /jobs/{jobId}/executionsListar as execuções de um job, da mais nova para a mais antiga200404 job desconhecido
GET /executions/{id}Ler uma execução200404

Não há endpoint para excluir um job nem para mudar o estado de uma execução. As falhas de validação são produzidas pela validação de requisições do Spring; o repositório não tem teste que fixe o formato da resposta.

Campos do job

Os corpos de criação e de atualização compartilham os mesmos campos.

  • name (string): obrigatório, no máximo 120 caracteres.
  • command (string): obrigatório.
  • cronExpression (string): opcional, não pode estar em branco, no máximo 100 caracteres; guardado sem interpretação.
  • maxRetries (inteiro): obrigatório, zero ou mais; guardado sem efeito.
  • timeoutSeconds (inteiro): obrigatório, maior que zero; guardado sem efeito.
criar um jobshell
curl -X POST http://localhost:8080/jobs \  -H 'Content-Type: application/json' \  -d '{"name":"database-backup","command":"./backup.sh","cronExpression":"0 3 * * *","maxRetries":0,"timeoutSeconds":300}'

A resposta é um job com id, enabled, createdAt e updatedAt acrescentados. Um job novo sempre nasce habilitado.

json
{  "id": 1,  "name": "database-backup",  "command": "./backup.sh",  "cronExpression": "0 3 * * *",  "enabled": true,  "maxRetries": 0,  "timeoutSeconds": 300,  "createdAt": "2026-09-15T12:00:00Z",  "updatedAt": "2026-09-15T12:00:00Z"}

Os valores acima são um exemplo. A expressão cron não é avaliada, então este job não vai rodar às 03:00.

Execuções

Registrar uma execução copia command, maxRetries e timeoutSeconds do job para o novo registro e define o status como QUEUED.

registrar uma execuçãoshell
curl -X POST http://localhost:8080/jobs/1/executions
json
{  "id": 1,  "jobId": 1,  "status": "QUEUED",  "command": "./backup.sh",  "maxRetries": 0,  "timeoutSeconds": 300,  "createdAt": "2026-09-15T12:01:00Z",  "startedAt": null,  "finishedAt": null,  "exitCode": null,  "errorMessage": null}
Nota

A execução permanece QUEUED. Os estados RUNNING, SUCCEEDED, FAILED e CANCELLED existem no modelo, mas nenhum endpoint nem processo em segundo plano move uma execução para eles ainda.

Valores de status

StatusSignificado hoje
QUEUEDregistrado e em espera; o único estado alcançável pela API
RUNNINGdefinido no modelo de domínio
SUCCEEDEDdefinido no modelo de domínio
FAILEDdefinido no modelo de domínio
CANCELLEDdefinido no modelo de domínio

Referências