Skip to main content
POST
/
api
/
v1
/
postmortems
/
{name}
/
close
Close PostMortem
curl --request POST \
  --url https://api.example.com/api/v1/postmortems/{name}/close \
  --header 'Content-Type: application/json' \
  --data '
{
  "reviewer": "<string>",
  "notes": "<string>"
}
'
{
  "apiVersion": "v1",
  "kind": "PostMortem",
  "metadata": {
    "name": "PM-20260319-001",
    "namespace": "production"
  },
  "status": {
    "state": "Closed",
    "reviewer": "carlos.silva@empresa.com",
    "closedAt": "2026-03-19T18:00:00Z",
    "notes": "All action items assigned. Root cause verified. Approved for compliance archive."
  }
}
name
string
required
Unique postmortem name (e.g., PM-20260319-001)
namespace
string
default:"default"
Kubernetes namespace
reviewer
string
Identifier of the person closing the postmortem
notes
string
Final notes or summary of the review outcome

PostMortem Lifecycle

Auto-generated (on incident resolution)

  State: Open

  POST /review → State: InReview

  POST /close → State: Closed (terminal)
A closed postmortem is immutable and serves as the permanent record for compliance and audit purposes.
{
  "apiVersion": "v1",
  "kind": "PostMortem",
  "metadata": {
    "name": "PM-20260319-001",
    "namespace": "production"
  },
  "status": {
    "state": "Closed",
    "reviewer": "carlos.silva@empresa.com",
    "closedAt": "2026-03-19T18:00:00Z",
    "notes": "All action items assigned. Root cause verified. Approved for compliance archive."
  }
}
{
  "apiVersion": "v1",
  "kind": "Error",
  "error": {
    "code": 409,
    "message": "PostMortem already closed",
    "details": "The postmortem 'PM-20260319-001' was already closed at 2026-03-19T18:00:00Z"
  }
}