{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/rutter/json-schema/rutter-list-webhook-logs-response-schema.json",
  "title": "ListWebhookLogsResponse",
  "description": "Returns recent webhook delivery logs for the given connection within a one-hour creation-time window. Defaults to the most recent hour. Use start_time to select an earlier window within the available history. `time_window` reports the window that was searched, and `has_more` reports whether another page follows. Credential-shaped values in URLs are redacted.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/rutter-webhooks-api-openapi.yml#/components/schemas/ListWebhookLogsResponse",
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "The page size this response used, whether it was requested or defaulted."
    },
    "has_more": {
      "type": "boolean",
      "description": "Whether another page exists after this one within the same window and filters. `false` marks the end of the results."
    },
    "page": {
      "type": "number",
      "description": "The 1-based page this response returns, whether it was requested or defaulted."
    },
    "time_window": {
      "$ref": "#/$defs/WebhookLogTimeWindow"
    },
    "webhook_logs": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/WebhookLogSummary"
      }
    }
  },
  "required": [
    "limit",
    "has_more",
    "page",
    "time_window",
    "webhook_logs"
  ],
  "$defs": {
    "WebhookLogSummary": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid"
        },
        "item_id": {
          "type": "string",
          "format": "uuid"
        },
        "resource_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "next_attempt_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "retry_amount": {
          "type": "number"
        },
        "success": {
          "type": "boolean"
        },
        "url": {
          "type": "string"
        },
        "webhook_type": {
          "type": "string"
        },
        "created_at": {
          "type": "string"
        },
        "updated_at": {
          "type": "string"
        }
      },
      "required": [
        "id",
        "item_id",
        "resource_id",
        "next_attempt_at",
        "retry_amount",
        "success",
        "url",
        "webhook_type",
        "created_at",
        "updated_at"
      ]
    },
    "WebhookLogTimeWindow": {
      "type": "object",
      "properties": {
        "end": {
          "type": "string",
          "description": "Exclusive end of the creation-time window that was searched, as an ISO 8601 UTC timestamp."
        },
        "start": {
          "type": "string",
          "description": "Inclusive start of the creation-time window that was searched, as an ISO 8601 UTC timestamp."
        }
      },
      "required": [
        "end",
        "start"
      ],
      "description": "The creation-time window this query actually searched. An empty `webhook_logs` means no delivery matched inside this window, not that the connection has never fired webhooks."
    }
  }
}