changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "additionalProperties": true,
+ "description": "Coverage + freshness manifest. On failure this object is an error report instead (see error/detail).",
+ "properties": {
+ "cache_note": {
+ "description": "What the cache does and does not affect.",
+ "type": "string"
+ },
+ "cache_policy": {
+ "description": "Cache policy in force.",
+ "type": "string"
+ },
+ "cache_ttl_s": {
+ "description": "Cache lifetime of this manifest in seconds.",
+ "type": "number"
+ },
+ "detail": {
+ "description": "Present on some failures: the upstream endpoint's own error text.",
+ "type": "string"
+ },
+ "error": {
+ "description": "Present only when the call failed; human-readable reason.",
+ "type": "string"
+ },
+ "freshness_rule": {
+ "description": "How fresh/recent/stale are decided.",
+ "type": "string"
+ },
+ "freshness_thresholds": {
+ "description": "The numeric thresholds behind freshness_rule.",
+ "type": "object"
+ },
+ "nature": {
+ "description": "What this manifest is.",
+ "type": "string"
+ },
+ "note": {
+ "description": "Screening-level disclaimer.",
+ "type": "string"
+ },
+ "signals": {
+ "description": "One entry per signal line. Compact by default; pass full=true for per-entity detail.",
+ "items": {
+ "additionalProperties": true,
+ "properties": {
+ "checkup": {
+ "description": "Latest patrol result for the line (full mode).",
+ "type": "object"
+ },
+ "description": {
+ "description": "What the line measures (full mode).",
+ "type": "string"
+ },
+ "entities": {
+ "description": "Per-entity detail; present only when full=true.",
+ "items": {
+ "additionalProperties": true,
+ "properties": {
+ "data_age_hours": {
+ "description": "Age of the observation in hours.",
+ "type": "number"
+ },
+ "entity": {
+ "description": "Object id.",
+ "type": "string"
+ },
+ "entity_name": {
+ "description": "Human-readable object name.",
+ "type": "string"
+ },
+ "freshness": {
+ "description": "fresh | recent | stale.",
+ "type": "string"
+ },
+ "observed_at": {
+ "description": "ISO timestamp of the observation.",
+ "type": "string"
+ },
+ "vintage_days": {
+ "description": "Age of the underlying source vintage in days.",
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "entities_count": {
+ "description": "How many objects the line covers.",
+ "type": "integer"
+ },
+ "factory": {
+ "description": "Internal collector name (full mode).",
+ "type": "string"
+ },
+ "freshness_counts": {
+ "description": "fresh / recent / stale counts for the line.",
+ "type": "object"
+ },
+ "industry": {
+ "description": "Domain the line belongs to.",
+ "type": "string"
+ },
+ "latest_observed_at": {
+ "description": "ISO timestamp of the newest observation in the line.",
+ "type": "string"
+ },
+ "max_overdue_days": {
+ "description": "Largest overdue gap in the line, in days.",
+ "type": "integer"
+ },
+ "record_type": {
+ "description": "Kind of record the line emits (full mode).",
+ "type": "string"
+ },
+ "signal_id": {
+ "description": "e.g. hydrology.river-level",
+ "type": "string"
+ },
+ "signal_id_label": {
+ "description": "Human-readable line name (full mode).",
+ "type": "string"
+ },
+ "temporal_cycle": {
+ "description": "Publication cycle declared by the upstream source (full mode).",
+ "type": "string"
+ },
+ "update_status": {
+ "description": "on_schedule | overdue | not_published | unknown.",
+ "type": "string"
+ },
+ "update_status_counts": {
+ "description": "Per-status entity counts.",
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "totals": {
+ "description": "signal_ids / industries / distinct_entities / freshness counts across the whole catalogue.",
+ "type": "object"
+ },
+ "update_status_rule": {
+ "description": "How on_schedule / overdue / not_published / unknown are decided.",
+ "type": "object"
+ }
+ },
+ "required": [],
+ "type": "object"
+}