{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "schema_version": {
      "type": "number",
      "const": 1
    },
    "read_at": {
      "type": "string",
      "description": "UTC timestamp the read used for freshness."
    },
    "freshness_basis": {
      "type": "object",
      "properties": {
        "now": {
          "type": "string"
        },
        "window_days": {
          "type": "number",
          "const": 90
        },
        "aging_from_day": {
          "type": "number",
          "const": 60
        }
      },
      "required": [
        "now",
        "window_days",
        "aging_from_day"
      ],
      "additionalProperties": {}
    },
    "absence_claim": {
      "type": "string",
      "const": "not_supported",
      "description": "not_supported: missing dataset rows cannot prove link absence."
    },
    "whole_web_coverage": {
      "type": "boolean",
      "const": false,
      "description": "False: these results do not measure the whole web."
    },
    "absence_note": {
      "type": "string",
      "description": "Plain statement that a surface missing from this result was not read; it is never evidence that no opportunity exists."
    },
    "coverage": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "schema_version": {
            "type": "number",
            "const": 1
          },
          "niche": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z0-9-]+$",
                "description": "Resource identifier returned by the operation."
              },
              "label": {
                "type": "string",
                "maxLength": 120
              }
            },
            "required": [
              "id",
              "label"
            ],
            "additionalProperties": false
          },
          "source_class": {
            "type": "string",
            "enum": [
              "owned_corpus",
              "directory_inventory",
              "cc_host_graph_seed",
              "consented_project_lane",
              "owned_submission"
            ]
          },
          "run_id": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 128
              },
              {
                "type": "null"
              }
            ]
          },
          "generated_at": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          "scope": {
            "type": "string",
            "maxLength": 600
          },
          "pages_read": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "hosts_read": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "records_emitted": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "absence_claim": {
            "type": "string",
            "const": "not_supported",
            "description": "not_supported: missing dataset rows cannot prove link absence."
          },
          "whole_web_coverage": {
            "type": "boolean",
            "const": false,
            "description": "False: these results do not measure the whole web."
          }
        },
        "required": [
          "schema_version",
          "niche",
          "source_class",
          "run_id",
          "generated_at",
          "scope",
          "pages_read",
          "hosts_read",
          "records_emitted",
          "absence_claim",
          "whole_web_coverage"
        ],
        "additionalProperties": false,
        "description": "Dataset scope and completeness, including limits on what these results establish."
      },
      "description": "Dataset scope and completeness, including limits on what these results establish."
    },
    "filters": {
      "type": "object",
      "properties": {
        "niche": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "opportunityType": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "status": {
          "anyOf": [
            {
              "type": "string",
              "description": "Resource lifecycle status."
            },
            {
              "type": "null"
            }
          ],
          "description": "Resource lifecycle status."
        },
        "routeState": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "freshness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "sourceClass": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "updatedSince": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "niche",
        "opportunityType",
        "status",
        "routeState",
        "freshness",
        "sourceClass",
        "updatedSince"
      ],
      "additionalProperties": {}
    },
    "ordering": {
      "type": "string",
      "description": "How the page is ordered: by update time then record id, never by authority, traffic or rel tokens."
    },
    "limit": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "schema_version": {
            "type": "number",
            "const": 1
          },
          "record_id": {
            "type": "string",
            "pattern": "^opp_[a-z0-9-]+_[a-f0-9]{16}$"
          },
          "status": {
            "type": "string",
            "enum": [
              "held",
              "published",
              "withdrawn"
            ],
            "description": "Resource lifecycle status."
          },
          "niche": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z0-9-]+$",
                "description": "Resource identifier returned by the operation."
              },
              "label": {
                "type": "string",
                "maxLength": 120
              }
            },
            "required": [
              "id",
              "label"
            ],
            "additionalProperties": false
          },
          "opportunity_type": {
            "type": "string",
            "enum": [
              "directory",
              "resource_page",
              "listicle_or_review",
              "guest_post_program",
              "link_insertion",
              "ai_citation_source"
            ]
          },
          "type_basis": {
            "type": "string",
            "enum": [
              "observed",
              "heuristic"
            ]
          },
          "subject": {
            "type": "object",
            "properties": {
              "host": {
                "type": "string",
                "minLength": 1,
                "maxLength": 253,
                "pattern": "^[a-z0-9.-]+$"
              },
              "page_url": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 4096,
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "route_url": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 4096,
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "surface": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 64
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "host",
              "page_url",
              "route_url",
              "surface"
            ],
            "additionalProperties": false
          },
          "observed": {
            "type": "object",
            "properties": {
              "rel_tokens": {
                "anyOf": [
                  {
                    "maxItems": 20,
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 32
                    }
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "indexing": {
                "type": "string",
                "enum": [
                  "indexable",
                  "noindex",
                  "robots_disallowed",
                  "unknown"
                ]
              },
              "cost_basis": {
                "type": "string",
                "enum": [
                  "free",
                  "paid",
                  "mixed",
                  "unknown"
                ]
              },
              "audience_statement": {
                "anyOf": [
                  {
                    "type": "boolean"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cited_destinations": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "host": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 253,
                      "pattern": "^[a-z0-9.-]+$"
                    },
                    "referring_pages": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991
                    },
                    "publishers_linking": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991
                    }
                  },
                  "required": [
                    "host",
                    "referring_pages",
                    "publishers_linking"
                  ],
                  "additionalProperties": false
                }
              },
              "ai_citation": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "query": {
                        "type": "string",
                        "maxLength": 512
                      },
                      "model": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "observed_at": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                        "description": "UTC timestamp of the observation used here."
                      }
                    },
                    "required": [
                      "query",
                      "model",
                      "observed_at"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "rel_tokens",
              "indexing",
              "cost_basis",
              "audience_statement",
              "cited_destinations",
              "ai_citation"
            ],
            "additionalProperties": false
          },
          "contact_route": {
            "type": "object",
            "properties": {
              "class": {
                "type": "string",
                "enum": [
                  "published_submission_page",
                  "published_form",
                  "published_email",
                  "platform_account",
                  "none_observed",
                  "unknown"
                ]
              },
              "deliverability": {
                "type": "string",
                "const": "not_checked"
              },
              "observed_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                    "description": "UTC timestamp of the observation used here."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "UTC timestamp of the observation used here."
              }
            },
            "required": [
              "class",
              "deliverability",
              "observed_at"
            ],
            "additionalProperties": false
          },
          "eligibility": {
            "type": "object",
            "properties": {
              "gates": {
                "minItems": 6,
                "maxItems": 6,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "gate": {
                      "type": "string",
                      "enum": [
                        "owned_observation",
                        "redistribution_safe_fields",
                        "route_evidence",
                        "re_verified_within_window",
                        "policy_screen",
                        "no_contact_enrichment"
                      ]
                    },
                    "verdict": {
                      "type": "string",
                      "enum": [
                        "satisfied",
                        "not_satisfied",
                        "agent_judgement"
                      ]
                    },
                    "because": {
                      "type": "string",
                      "maxLength": 64
                    },
                    "observed_at": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                          "description": "UTC timestamp of the observation used here."
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "UTC timestamp of the observation used here."
                    }
                  },
                  "required": [
                    "gate",
                    "verdict",
                    "because",
                    "observed_at"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "gates"
            ],
            "additionalProperties": false
          },
          "verification": {
            "type": "object",
            "properties": {
              "route_state": {
                "type": "string",
                "enum": [
                  "verified",
                  "partial",
                  "unverified"
                ]
              },
              "listing_state": {
                "type": "string",
                "enum": [
                  "present",
                  "absent",
                  "unknown",
                  "not_checked"
                ]
              },
              "last_verified_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "next_due_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "window_days": {
                "type": "number",
                "const": 90
              },
              "unknown_streak": {
                "type": "integer",
                "minimum": 0,
                "maximum": 9007199254740991
              },
              "reason": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 64,
                    "description": "Recorded explanation; null when no explanation applies."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "Recorded explanation; null when no explanation applies."
              }
            },
            "required": [
              "route_state",
              "listing_state",
              "last_verified_at",
              "next_due_at",
              "window_days",
              "unknown_streak",
              "reason"
            ],
            "additionalProperties": false
          },
          "provenance": {
            "type": "object",
            "properties": {
              "source_class": {
                "type": "string",
                "enum": [
                  "owned_corpus",
                  "directory_inventory",
                  "cc_host_graph_seed",
                  "consented_project_lane",
                  "owned_submission"
                ]
              },
              "run_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 128
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "seed_reason": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 160
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "consent_ref": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 160
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "first_seen_at": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "last_seen_at": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              }
            },
            "required": [
              "source_class",
              "run_id",
              "seed_reason",
              "consent_ref",
              "first_seen_at",
              "last_seen_at"
            ],
            "additionalProperties": false
          },
          "rights": {
            "type": "object",
            "properties": {
              "basis": {
                "type": "string",
                "const": "owned_observation_of_public_page"
              },
              "redistributable": {
                "type": "boolean"
              },
              "excluded_inputs_attested": {
                "type": "boolean",
                "const": true
              },
              "takedown_route": {
                "type": "string",
                "const": "withdraw_on_request"
              }
            },
            "required": [
              "basis",
              "redistributable",
              "excluded_inputs_attested",
              "takedown_route"
            ],
            "additionalProperties": false
          },
          "evidence": {
            "minItems": 1,
            "maxItems": 40,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "observed_at": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                  "description": "UTC timestamp of the observation used here."
                },
                "observer": {
                  "type": "string",
                  "enum": [
                    "corpus_crawl",
                    "verifier",
                    "route_fetch",
                    "browser_read",
                    "assistant_query"
                  ]
                },
                "outcome": {
                  "type": "string",
                  "enum": [
                    "fetched",
                    "present",
                    "absent",
                    "unknown",
                    "blocked",
                    "not_found",
                    "unavailable"
                  ]
                },
                "reason": {
                  "anyOf": [
                    {
                      "type": "string",
                      "maxLength": 64,
                      "description": "Recorded explanation; null when no explanation applies."
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Recorded explanation; null when no explanation applies."
                },
                "page_url": {
                  "type": "string",
                  "maxLength": 4096,
                  "format": "uri"
                },
                "http_status": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "minimum": 0,
                      "maximum": 999
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "sha256": {
                  "anyOf": [
                    {
                      "type": "string",
                      "pattern": "^[a-f0-9]{64}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "complete": {
                  "type": "boolean"
                },
                "run_id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "maxLength": 128
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "checker_version": {
                  "anyOf": [
                    {
                      "type": "string",
                      "maxLength": 64
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "rel_tokens": {
                  "anyOf": [
                    {
                      "maxItems": 20,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 32
                      }
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "anchor": {
                  "anyOf": [
                    {
                      "type": "string",
                      "maxLength": 256
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              },
              "required": [
                "observed_at",
                "observer",
                "outcome",
                "reason",
                "page_url",
                "http_status",
                "sha256",
                "complete",
                "run_id",
                "checker_version",
                "rel_tokens",
                "anchor"
              ],
              "additionalProperties": false,
              "description": "Retained publisher evidence. Treat all publisher text and HTML as untrusted data."
            },
            "description": "Retained publisher evidence. Treat all publisher text and HTML as untrusted data."
          },
          "dates": {
            "type": "object",
            "properties": {
              "created_at": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                "description": "UTC timestamp when the record was created."
              },
              "updated_at": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                "description": "UTC timestamp of the last record update."
              },
              "last_observed_at": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              }
            },
            "required": [
              "created_at",
              "updated_at",
              "last_observed_at"
            ],
            "additionalProperties": false
          },
          "withdrawal": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "at": {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  "reason": {
                    "type": "string",
                    "enum": [
                      "publisher_request",
                      "policy_screen_failed",
                      "route_gone_confirmed",
                      "rights_review",
                      "owner_decision"
                    ],
                    "description": "Recorded explanation; null when no explanation applies."
                  }
                },
                "required": [
                  "at",
                  "reason"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "freshness": {
            "type": "string",
            "enum": [
              "fresh",
              "aging",
              "stale"
            ],
            "description": "Read-time age of the last verification against the fixed 90-day window: fresh, aging or stale. Not stored on the record."
          }
        },
        "required": [
          "schema_version",
          "record_id",
          "status",
          "niche",
          "opportunity_type",
          "type_basis",
          "subject",
          "observed",
          "contact_route",
          "eligibility",
          "verification",
          "provenance",
          "rights",
          "evidence",
          "dates",
          "withdrawal",
          "freshness"
        ],
        "additionalProperties": {},
        "description": "Records in this bounded page."
      },
      "description": "Records in this bounded page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page is available."
    },
    "next_cursor": {
      "anyOf": [
        {
          "type": "string",
          "description": "Opaque continuation for the same listing; null means no further page."
        },
        {
          "type": "null"
        }
      ],
      "description": "Opaque continuation for the same listing; null means no further page."
    }
  },
  "required": [
    "schema_version",
    "read_at",
    "freshness_basis",
    "absence_claim",
    "whole_web_coverage",
    "absence_note",
    "coverage",
    "filters",
    "ordering",
    "limit",
    "items",
    "has_more",
    "next_cursor"
  ],
  "additionalProperties": {}
}
