curl --request POST \
--url https://api.example.com/api/v1/approvals/{name}/approve \
--header 'Content-Type: application/json' \
--data '
{
"approvedBy": "<string>",
"comment": "<string>"
}
'{
"apiVersion": "v1",
"kind": "Approval",
"metadata": {
"name": "APR-20260319-001",
"namespace": "production"
},
"status": {
"status": "approved",
"approvedBy": "carlos.silva@empresa.com",
"approvedAt": "2026-03-19T15:35:00Z",
"comment": "Aprovado — análise de IA confirma necessidade de aumento de memoria",
"incident": "INC-20260319-001",
"remediationTriggered": true
}
}
Aprova uma solicitacao pendente, permitindo que a remediação seja executada
curl --request POST \
--url https://api.example.com/api/v1/approvals/{name}/approve \
--header 'Content-Type: application/json' \
--data '
{
"approvedBy": "<string>",
"comment": "<string>"
}
'{
"apiVersion": "v1",
"kind": "Approval",
"metadata": {
"name": "APR-20260319-001",
"namespace": "production"
},
"status": {
"status": "approved",
"approvedBy": "carlos.silva@empresa.com",
"approvedAt": "2026-03-19T15:35:00Z",
"comment": "Aprovado — análise de IA confirma necessidade de aumento de memoria",
"incident": "INC-20260319-001",
"remediationTriggered": true
}
}
APR-20260319-001){
"apiVersion": "v1",
"kind": "Approval",
"metadata": {
"name": "APR-20260319-001",
"namespace": "production"
},
"status": {
"status": "approved",
"approvedBy": "carlos.silva@empresa.com",
"approvedAt": "2026-03-19T15:35:00Z",
"comment": "Aprovado — análise de IA confirma necessidade de aumento de memoria",
"incident": "INC-20260319-001",
"remediationTriggered": true
}
}
{
"apiVersion": "v1",
"kind": "Error",
"error": {
"code": 409,
"message": "Aprovação já decidida",
"details": "A aprovação 'APR-20260319-001' já foi aprovada por carlos.silva@empresa.com em 2026-03-19T15:35:00Z"
}
}
{
"apiVersion": "v1",
"kind": "Error",
"error": {
"code": 410,
"message": "Aprovação expirada",
"details": "A aprovação 'APR-20260319-001' expirou em 2026-03-19T16:21:05Z"
}
}