{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/agentwebmap-com/json-schema/agentwebmap-com-similar-sites-schema.json",
  "title": "SimilarSites",
  "x-generated": "2026-11-01",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/agentwebmap-com-openapi.json#/components/schemas/SimilarSites",
  "type": "object",
  "properties": {
    "domain": {
      "type": "string"
    },
    "title": {
      "type": [
        "string",
        "null"
      ]
    },
    "available": {
      "type": "boolean"
    },
    "reason": {
      "type": "string"
    },
    "model": {
      "type": "string"
    },
    "meaning": {
      "type": "string"
    },
    "filters": {
      "type": "object",
      "properties": {
        "country": {
          "type": [
            "string",
            "null"
          ]
        },
        "action": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "country",
        "action"
      ],
      "additionalProperties": false
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "pending",
              "valid",
              "invalid",
              "unreachable"
            ]
          },
          "tier": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "featured",
              "listed",
              "unlisted",
              "rejected",
              null
            ]
          },
          "authority": {
            "type": [
              "integer",
              "null"
            ]
          },
          "verified": {
            "type": "boolean"
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "summary": {
            "type": [
              "string",
              "null"
            ]
          },
          "llms_txt": {
            "type": [
              "string",
              "null"
            ]
          },
          "llms_full_txt": {
            "type": [
              "string",
              "null"
            ]
          },
          "last_checked": {
            "type": [
              "string",
              "null"
            ]
          },
          "agent_terms": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "automated_access": {
                    "type": "string",
                    "enum": [
                      "welcome",
                      "limited",
                      "ask",
                      "not_allowed"
                    ]
                  },
                  "rate_limit": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "attribution": {
                    "type": "string",
                    "enum": [
                      "required",
                      "appreciated",
                      "none"
                    ]
                  },
                  "attribution_text": {
                    "type": "string",
                    "maxLength": 200
                  },
                  "pricing": {
                    "type": "string",
                    "enum": [
                      "free",
                      "freemium",
                      "paid"
                    ]
                  },
                  "pricing_url": {
                    "type": "string"
                  },
                  "terms_url": {
                    "type": "string"
                  },
                  "notes": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "required": [],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "categories": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "ai-ml",
                "developer-tools",
                "infrastructure",
                "data-analytics",
                "cybersecurity",
                "finance-payments",
                "ecommerce",
                "productivity",
                "marketing",
                "education",
                "healthcare",
                "media",
                "design",
                "gaming",
                "travel",
                "community",
                "legal",
                "recruiting-careers",
                "industrial-manufacturing",
                "real-estate",
                "arts-culture",
                "sports-fitness",
                "food-dining",
                "automotive",
                "government-public-services",
                "science-research",
                "ai-agents-mcp",
                "apis-sdks",
                "databases",
                "auth-identity",
                "devops-observability",
                "no-code-automation",
                "communications",
                "crypto-web3",
                "saas-business-software",
                "open-source",
                "documentation-reference",
                "fashion-beauty",
                "home-garden",
                "consumer-electronics",
                "pets",
                "insurance",
                "telecom",
                "logistics-shipping",
                "energy-utilities",
                "construction-architecture",
                "agriculture",
                "nonprofit",
                "events",
                "personal-blog",
                "entertainment",
                "local-business"
              ]
            },
            "maxItems": 8,
            "uniqueItems": true,
            "description": "Inferred topic IDs from publisher metadata; empty means unclassified."
          },
          "inferred_tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Topic tags inferred by the AI classifier from the site text."
          },
          "audience": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "developers",
                  "consumers",
                  "business",
                  "mixed"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "agent_uses": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "read_docs",
                "call_api",
                "buy",
                "book",
                "search_content",
                "download_data",
                "contact_support"
              ]
            },
            "uniqueItems": true
          },
          "language": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": [
              "string",
              "null"
            ],
            "description": "Published or declared address country preferred; domain/hosting fallback. Null when unknown. Not independently verified headquarters or markets served."
          },
          "country_source": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "owner",
              "structured_data",
              "contact_page",
              "tld",
              "ip",
              "cdn",
              null
            ],
            "description": "owner: owner-declared address; structured_data/contact_page: site-published address; tld: domain inference; ip: non-CDN hosting inference; cdn: location withheld. No source independently verifies headquarters."
          },
          "publisher_country": {
            "type": [
              "string",
              "null"
            ]
          },
          "publisher_country_source": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "owner",
              "structured_data",
              "contact_page",
              null
            ]
          },
          "hosting_country": {
            "type": [
              "string",
              "null"
            ]
          },
          "platform_generated": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "agent_summary": {
            "type": [
              "string",
              "null"
            ]
          },
          "llms_txt_cached": {
            "type": "string"
          },
          "agentic": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "interface",
                  "transactional",
                  "documentation",
                  "informational"
                ],
                "description": "What an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people)."
              },
              {
                "type": "null"
              }
            ]
          },
          "section_keys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "section_partial": {
            "type": "boolean"
          },
          "section_indexed_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "capabilities": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "mcp"
              ]
            },
            "uniqueItems": true,
            "description": "Publisher-declared capabilities. An MCP declaration does not prove availability or protocol compatibility."
          },
          "similarity": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "shared_sections": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "domain",
          "status",
          "tier",
          "authority",
          "verified",
          "title",
          "summary",
          "llms_txt",
          "llms_full_txt",
          "last_checked",
          "agent_terms",
          "categories",
          "inferred_tags",
          "audience",
          "agent_uses",
          "language",
          "country",
          "country_source",
          "publisher_country",
          "publisher_country_source",
          "hosting_country",
          "platform_generated",
          "agent_summary",
          "llms_txt_cached",
          "agentic",
          "section_keys",
          "section_partial",
          "section_indexed_at",
          "capabilities",
          "similarity",
          "shared_sections"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "domain",
    "title",
    "available",
    "model",
    "meaning",
    "results"
  ],
  "additionalProperties": false
}