{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "$id": "https://agenttrustapi.com/retirements.schema.json",
 "title": "AI model retirement calendar",
 "description": "Schema of https://agenttrustapi.com/retirements.json (Trust Engine AI, CC BY 4.0). Generated from https://agenttrustapi.com/retirements/.",
 "type": "object",
 "required": ["name", "description", "updated", "license", "publisher", "homepage", "count", "events"],
 "properties": {
  "name": {"type": "string"},
  "description": {"type": "string"},
  "updated": {"type": "string", "format": "date", "description": "Date the calendar page was last changed."},
  "checked": {"type": "string", "format": "date", "description": "Date the vendor pages were last read."},
  "license": {"const": "CC BY 4.0"},
  "license_url": {"type": "string", "format": "uri"},
  "publisher": {
   "type": "object",
   "required": ["name", "url"],
   "properties": {"name": {"type": "string"}, "url": {"type": "string", "format": "uri"}, "email": {"type": "string"}}
  },
  "homepage": {"type": "string", "format": "uri"},
  "schema": {"type": "string", "format": "uri"},
  "atom": {"type": "string", "format": "uri"},
  "coverage": {
   "type": "object",
   "properties": {
    "platforms": {"type": "array", "items": {"type": "string"}},
    "not_covered": {"type": "array", "items": {"type": "string"}}
   }
  },
  "notes": {"type": "array", "items": {"type": "string"}},
  "count": {"type": "integer", "minimum": 0},
  "events": {"type": "array", "items": {"$ref": "#/$defs/event"}}
 },
 "$defs": {
  "event": {
   "type": "object",
   "additionalProperties": false,
   "required": ["id", "provider", "platform", "model", "model_ids", "event", "date", "replacement", "category", "source_url", "source_checked"],
   "properties": {
    "id": {"type": "string", "description": "Stable id: <date or no-date>-<platform>-<first model>."},
    "provider": {"type": "string", "description": "Company that runs the platform, e.g. Anthropic, OpenAI, Google, Amazon Web Services, Mistral AI."},
    "platform": {"type": "string", "description": "Where the date applies, e.g. Anthropic (Claude API), AWS Bedrock, Google Vertex AI."},
    "model": {"type": "string", "description": "Models or feature exactly as listed on the page."},
    "model_ids": {"type": "array", "items": {"type": "string"}, "description": "API model ids; empty when the row is a feature or endpoint, not a model."},
    "event": {"enum": ["retirement", "deprecation", "redirect"], "description": "retirement: stops working on that date; deprecation: announced, date not yet set; redirect: requests are routed to another model."},
    "date": {"type": ["string", "null"], "format": "date", "description": "ISO date of the event on that platform; null when not yet set."},
    "replacement": {"type": ["string", "null"], "description": "Replacement named by the vendor, if stated."},
    "category": {"enum": ["text_or_agent", "other", "unspecified"], "description": "text_or_agent: text, coding and agent models; other: audio, image, embedding models and platform features."},
    "source_url": {"type": "string", "format": "uri", "pattern": "^https://"},
    "source_checked": {"type": "string", "format": "date"}
   }
  }
 }
}
