{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/alert-camp/json-schema/alert-camp-alert-match-response-schema.json",
  "title": "AlertMatchResponse",
  "description": "Schema for an individual alert match (persisted cancellation detection).",
  "x-generated": "2026-11-01",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/alert-camp-openapi.json#/components/schemas/AlertMatchResponse",
  "properties": {
    "id": {
      "type": "string",
      "title": "Id"
    },
    "alert_id": {
      "type": "string",
      "title": "Alert Id"
    },
    "user_id": {
      "type": "string",
      "title": "User Id"
    },
    "site_id": {
      "type": "string",
      "title": "Site Id"
    },
    "site_name": {
      "type": "string",
      "title": "Site Name"
    },
    "site_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Site Url"
    },
    "site_image_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Site Image Url"
    },
    "park_id": {
      "type": "string",
      "title": "Park Id"
    },
    "park_name": {
      "type": "string",
      "title": "Park Name"
    },
    "camp_type": {
      "type": "string",
      "title": "Camp Type"
    },
    "available_date": {
      "type": "string",
      "format": "date-time",
      "title": "Available Date"
    },
    "price": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "title": "Price"
    },
    "booking_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Booking Url"
    },
    "nights": {
      "type": "integer",
      "title": "Nights",
      "default": 1
    },
    "segment_group_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Segment Group Id"
    },
    "segment_order": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Segment Order"
    },
    "pets_allowed": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Pets Allowed"
    },
    "accommodation_type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Accommodation Type"
    },
    "quota_span_days": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Quota Span Days"
    },
    "has_water": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Has Water"
    },
    "has_electricity": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Has Electricity"
    },
    "has_sewer": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Has Sewer"
    },
    "is_accessible": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Is Accessible"
    },
    "is_double_site": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Is Double Site"
    },
    "is_pull_through": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Is Pull Through"
    },
    "is_tent_only": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Is Tent Only"
    },
    "equipment_label": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Equipment Label"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "detected_at": {
      "type": "string",
      "format": "date-time",
      "title": "Detected At"
    },
    "seen_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Seen At"
    },
    "booked_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Booked At"
    },
    "clicked_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Clicked At"
    },
    "expires_at": {
      "type": "string",
      "format": "date-time",
      "title": "Expires At"
    },
    "booking_closed": {
      "type": "boolean",
      "title": "Booking Closed",
      "default": false
    },
    "booking_deadline": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Booking Deadline"
    }
  },
  "type": "object",
  "required": [
    "id",
    "alert_id",
    "user_id",
    "site_id",
    "site_name",
    "park_id",
    "park_name",
    "camp_type",
    "available_date",
    "status",
    "detected_at",
    "expires_at"
  ]
}