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 — analise de IA confirma necessidade de aumento de memoria",
"incident": "INC-20260319-001",
"remediationTriggered": true
}
}
Approves a pending request, allowing the remediation to be executed
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 — analise 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 — analise de IA confirma necessidade de aumento de memoria",
"incident": "INC-20260319-001",
"remediationTriggered": true
}
}
{
"apiVersion": "v1",
"kind": "Error",
"error": {
"code": 409,
"message": "Approval already decided",
"details": "The approval 'APR-20260319-001' was already approved by carlos.silva@empresa.com at 2026-03-19T15:35:00Z"
}
}
{
"apiVersion": "v1",
"kind": "Error",
"error": {
"code": 410,
"message": "Approval expired",
"details": "The approval 'APR-20260319-001' expired at 2026-03-19T16:21:05Z"
}
}