{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Wever Labs Callback Delivery Event",
  "type": "object",
  "required": [
    "callback_event_id",
    "callback_delivery_id",
    "event_type",
    "event_state"
  ],
  "properties": {
    "callback_event_id": {
      "type": "string"
    },
    "callback_delivery_id": {
      "type": "string"
    },
    "task_token": {
      "type": "string"
    },
    "event_type": {
      "type": "string",
      "enum": [
        "delivery_created",
        "delivery_attempted",
        "delivery_delivered",
        "delivery_failed",
        "retry_scheduled",
        "retry_attempted",
        "delivery_recovered",
        "delivery_closed"
      ]
    },
    "event_state": {
      "type": "string"
    },
    "attempt_number": {
      "type": "integer",
      "minimum": 0
    },
    "http_status": {
      "type": [
        "integer",
        "null"
      ]
    },
    "response_body_ref": {
      "type": [
        "string",
        "null"
      ]
    },
    "failure_reason": {
      "type": [
        "string",
        "null"
      ]
    },
    "created_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "payload": {
      "type": "object"
    }
  },
  "additionalProperties": true
}
