{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://www.arcreport.ai/schemas/agent-offers/2026-11-01.json",
  "title": "agent-offers.json (draft 2026-11-01)",
  "description": "A store's declaration of whether it pays AI agents (or their builders) for sales, and on what terms. Served at /.well-known/agent-offers.json. A declaration, not a contract. Holds no publisher IDs or tracking parameters. Readers ignore unknown fields. CC-BY-4.0, ARC (arcreport.ai).",
  "type": "object",
  "required": ["version", "updated", "pays_agents"],
  "properties": {
    "$schema": { "type": "string" },
    "version": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" },
    "updated": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" },
    "pays_agents": { "enum": [true, false, "unknown"] },
    "offers": { "type": "array", "items": { "$ref": "#/definitions/offer" } },
    "disclosure": {
      "type": "object",
      "required": ["required"],
      "properties": {
        "required": { "type": "boolean" },
        "text_url": { "type": "string", "pattern": "^https://" }
      }
    },
    "contact": { "type": "string" }
  },
  "if": { "properties": { "pays_agents": { "const": true } }, "required": ["pays_agents"] },
  "then": { "required": ["offers", "disclosure"], "properties": { "offers": { "minItems": 1 } } },
  "definitions": {
    "offer": {
      "type": "object",
      "required": ["type"],
      "properties": {
        "type": { "enum": ["affiliate", "direct_offer", "platform_fee"] },
        "networks": {
          "type": "array",
          "items": { "enum": ["awin", "impact", "cj", "rakuten", "partnerize", "skimlinks", "sovrn", "crossmint", "other"] }
        },
        "rate": {
          "type": "object",
          "required": ["kind"],
          "properties": {
            "kind": { "enum": ["percent", "flat"] },
            "min": { "type": "number", "minimum": 0 },
            "max": { "type": "number", "minimum": 0 },
            "currency": { "type": ["string", "null"], "pattern": "^[A-Z]{3}$" }
          }
        },
        "eligible": {
          "type": "object",
          "properties": {
            "scope": { "enum": ["all", "some"] },
            "include": { "type": "array", "items": { "type": "string" } },
            "exclude": { "type": "array", "items": { "type": "string" } },
            "markets": { "type": "array", "items": { "type": "string", "pattern": "^[A-Z]{2}$" } }
          }
        },
        "attribution": {
          "type": "object",
          "properties": {
            "method": { "enum": ["network_link", "coupon", "api_param", "ucp_extension"] },
            "window_days": { "type": "integer", "minimum": 0 }
          }
        },
        "agent_eligible": { "enum": ["yes", "no", "unspecified"] },
        "terms_url": { "type": "string", "pattern": "^https://" }
      }
    }
  }
}
