{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "description": "Resource identifier returned by the operation."
          },
          "projectId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "watchId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "contactId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "source": {
            "type": "object",
            "properties": {
              "namespace": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "accountRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "recordRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "eventId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              }
            },
            "required": [
              "namespace",
              "accountRef",
              "recordRef",
              "eventId"
            ],
            "additionalProperties": false
          },
          "outcome": {
            "type": "string",
            "enum": [
              "contacted",
              "replied",
              "publication_promised",
              "declined",
              "publication_claimed",
              "bounced",
              "send_error",
              "wrong_person",
              "do_not_contact",
              "email_health"
            ]
          },
          "occurredAt": {
            "type": "string"
          },
          "receivedAt": {
            "type": "string"
          },
          "method": {
            "type": "string",
            "enum": [
              "email",
              "contact_url",
              "none"
            ]
          },
          "validity": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "valid",
                  "role",
                  "invalid",
                  "catch-all",
                  "unknown"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "restrictionScope": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "method",
                  "contact",
                  "publisher"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "disposition": {
            "type": "string",
            "enum": [
              "accepted",
              "older",
              "contact_changed",
              "closed",
              "verified_win"
            ]
          }
        },
        "required": [
          "id",
          "projectId",
          "watchId",
          "contactId",
          "source",
          "outcome",
          "occurredAt",
          "receivedAt",
          "method",
          "validity",
          "restrictionScope",
          "disposition"
        ],
        "additionalProperties": false,
        "description": "Records in this bounded page."
      },
      "description": "Records in this bounded page."
    },
    "nextAfter": {
      "anyOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "items",
    "nextAfter"
  ],
  "additionalProperties": false
}
