Skip to main content

Webhook API

POST /webhook

Recebe eventos de Merge Request do GitLab.

Headers

HeaderObrigatórioDescrição
Content-Typesimapplication/json
X-Gitlab-TokensimToken de validação do webhook

Request body

Payload do Merge Request Webhook do GitLab.

{
"object_kind": "merge_request",
"project": {
"id": 42
},
"object_attributes": {
"iid": 7,
"action": "open",
"target_branch": "main",
"source_branch": "feature/add-auth",
"title": "feat: add authentication",
"description": "Implement JWT auth",
"diff_refs": {
"base_sha": "abc123",
"start_sha": "def456",
"head_sha": "ghi789"
},
"last_commit": {
"id": "xyz789"
}
}
}

Respostas

202 Accepted

Webhook aceito e processamento iniciado em background.

{"status": "accepted"}

200 OK

Evento ignorado (ação não suportada ou tipo de evento diferente).

{"status": "ignored"}

401 Unauthorized

Token inválido ou ausente.

{"detail": "invalid token"}

400 Bad Request

JSON inválido no body.

{"detail": "invalid json"}

Ações suportadas

AçãoComportamento
openFull diff via /merge_requests/:id/changes
update (com oldrev)Incremental diff via /repository/compare
update (sem oldrev)Ignorado
close, reopen, etc.Ignorado

GET /healthz

Health check endpoint.

Resposta

200 OK

{"status": "ok"}