{
  "openapi": "3.1.1",
  "info": {
    "title": "Explorer of Everything API",
    "version": "1.0.0",
    "summary": "Search transactions, contracts, domains, packages, advisories, MCP servers and websites in one box.",
    "description": "Every endpoint performs the same calculation as the human page and returns inputs, result, units, assumptions, sources, warnings and computedAt. MCP endpoint: /mcp."
  },
  "servers": [
    {
      "url": "https://explore.usefulweb.site"
    }
  ],
  "paths": {
    "/api/v1/calculate": {
      "post": {
        "operationId": "calculate",
        "summary": "Search transactions, contracts, domains, packages, advisories, MCP servers and websites in one box.",
        "description": "Paste anything technical — a transaction hash, a contract address, a domain, a package like npm:lodash@4.17.20, an advisory ID (GHSA/CVE), an MCP server URL or a web page. The explorer recognises what it is, runs the matching specialised explorer, and gives the entity a permanent page for people and a matching JSON endpoint for software and AI agents. Every answer carries its sources, retrieval time and schema version.\n\nMethodology:\n- Detection rules, in order: 32-byte hex → transaction; 20-byte hex → contract/address; GHSA/CVE/PYSEC/GO/RUSTSEC id → advisory; ecosystem:name@version → package; URL ending in /mcp or /sse (or host mcp.*) → MCP server; other URL → website AI readiness; bare domain → DNS + certificate.\n- The matching explorer runs with its own methodology; its sources, assumptions and warnings are passed through unchanged.\n- Permanent URLs: /explore/{kind}/… for people and /api/v1/… for machines are computed by the same explorer and return the identical result.",
        "tags": [
          "explorer"
        ],
        "x-mcp-tool": "explore",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExploreInput"
              },
              "examples": {
                "example1": {
                  "summary": "A domain",
                  "value": {
                    "query": "example.com"
                  }
                },
                "example2": {
                  "summary": "A package version",
                  "value": {
                    "query": "npm:lodash@4.17.20"
                  }
                },
                "example3": {
                  "summary": "USDC contract on Ethereum",
                  "value": {
                    "query": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
                    "chain": "ethereum"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Calculation result envelope.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExploreResult"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON body.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input (see errors[]).",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded (see Retry-After).",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/tool": {
      "get": {
        "operationId": "getToolDefinition",
        "summary": "Inputs, output schema and examples for this tool",
        "responses": {
          "200": {
            "description": "Tool definition.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/chains": {
      "get": {
        "operationId": "listChains",
        "summary": "Supported blockchains",
        "tags": [
          "explorer"
        ],
        "responses": {
          "200": {
            "description": "Chains",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/explore": {
      "get": {
        "operationId": "detectEntity",
        "summary": "Classify a search query and return the permanent entity URLs",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "chain",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Detected entity",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/transactions/{chain}/{hash}": {
      "get": {
        "operationId": "decodeATransaction",
        "summary": "Decode a transaction",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "chain",
            "in": "path",
            "description": "One of ethereum, base, arbitrum, optimism, polygon, avalanche, bsc",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "hash",
            "in": "path",
            "description": "0x-prefixed 32-byte hash",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "mode",
                        "chain",
                        "transaction",
                        "call",
                        "logs",
                        "tokenTransfers",
                        "graph"
                      ],
                      "properties": {
                        "mode": {
                          "type": "string",
                          "enum": [
                            "lookup",
                            "calldata"
                          ]
                        },
                        "chain": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "id",
                            "name",
                            "chainId"
                          ],
                          "properties": {
                            "id": {
                              "type": "string"
                            },
                            "name": {
                              "type": "string"
                            },
                            "chainId": {
                              "type": "integer"
                            }
                          }
                        },
                        "transaction": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "hash",
                            "status",
                            "finality",
                            "blockNumber",
                            "timestamp",
                            "confirmations",
                            "from",
                            "to",
                            "contractCreated",
                            "valueWei",
                            "value",
                            "gasUsed",
                            "effectiveGasPriceWei",
                            "feeWei",
                            "fee",
                            "nonce",
                            "type"
                          ],
                          "properties": {
                            "hash": {
                              "type": "string"
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "success",
                                "reverted",
                                "pending"
                              ]
                            },
                            "finality": {
                              "type": "string",
                              "enum": [
                                "pending",
                                "unfinalized",
                                "finalized",
                                "unknown"
                              ]
                            },
                            "blockNumber": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "timestamp": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "confirmations": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "from": {
                              "type": "string"
                            },
                            "to": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "contractCreated": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "valueWei": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            },
                            "gasUsed": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "effectiveGasPriceWei": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "feeWei": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "fee": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "nonce": {
                              "type": "integer"
                            },
                            "type": {
                              "type": "integer"
                            }
                          }
                        },
                        "call": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "selector",
                            "signature",
                            "signatureSource",
                            "args",
                            "alternatives"
                          ],
                          "properties": {
                            "selector": {
                              "type": "string"
                            },
                            "signature": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "signatureSource": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "alternatives": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "args": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "name",
                                  "type",
                                  "value"
                                ],
                                "properties": {
                                  "name": {
                                    "type": "string"
                                  },
                                  "type": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "logs": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "index",
                              "address",
                              "topic0",
                              "event",
                              "eventSource",
                              "indexingAssumed",
                              "args"
                            ],
                            "properties": {
                              "index": {
                                "type": "integer"
                              },
                              "address": {
                                "type": "string"
                              },
                              "topic0": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "event": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "eventSource": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "indexingAssumed": {
                                "type": "boolean"
                              },
                              "args": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "name",
                                    "type",
                                    "indexed",
                                    "value"
                                  ],
                                  "properties": {
                                    "name": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "string"
                                    },
                                    "indexed": {
                                      "type": "boolean"
                                    },
                                    "value": {
                                      "type": "string"
                                    }
                                  }
                                }
                              }
                            }
                          }
                        },
                        "tokenTransfers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "token",
                              "symbol",
                              "from",
                              "to",
                              "raw",
                              "amount"
                            ],
                            "properties": {
                              "token": {
                                "type": "string"
                              },
                              "symbol": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "from": {
                                "type": "string"
                              },
                              "to": {
                                "type": "string"
                              },
                              "raw": {
                                "type": "string"
                              },
                              "amount": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "graph": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "nodes",
                            "edges"
                          ],
                          "properties": {
                            "nodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "id",
                                  "kind",
                                  "label"
                                ],
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "kind": {
                                    "type": "string"
                                  },
                                  "label": {
                                    "type": "string"
                                  }
                                }
                              }
                            },
                            "edges": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "from",
                                  "to",
                                  "relation"
                                ],
                                "properties": {
                                  "from": {
                                    "type": "string"
                                  },
                                  "to": {
                                    "type": "string"
                                  },
                                  "relation": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/contracts/{chain}/{address}": {
      "get": {
        "operationId": "contractProxyAdminAndUpgradeHistory",
        "summary": "Contract proxy, admin and upgrade history",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "chain",
            "in": "path",
            "description": "One of ethereum, base, arbitrum, optimism, polygon, avalanche, bsc",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "address",
            "in": "path",
            "description": "0x-prefixed address",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "mode",
                        "chain",
                        "address",
                        "proxyType",
                        "upgradeable",
                        "implementation",
                        "beacon",
                        "admin",
                        "history",
                        "verification",
                        "bytecode",
                        "findings",
                        "graph"
                      ],
                      "properties": {
                        "mode": {
                          "type": "string",
                          "enum": [
                            "lookup",
                            "bytecode"
                          ]
                        },
                        "chain": {
                          "type": "string"
                        },
                        "address": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "proxyType": {
                          "type": "string",
                          "enum": [
                            "eip1967-transparent",
                            "eip1967-uups",
                            "eip1967-beacon",
                            "eip1167-minimal-proxy",
                            "safe-proxy",
                            "legacy-zeppelinos",
                            "eip7702-delegated-eoa",
                            "eoa",
                            "not-a-proxy",
                            "unknown-delegatecall"
                          ]
                        },
                        "upgradeable": {
                          "type": "string",
                          "enum": [
                            "yes",
                            "no",
                            "unknown"
                          ]
                        },
                        "implementation": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "beacon": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "admin": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "address",
                            "kind",
                            "safe",
                            "timelockDelaySeconds",
                            "owner"
                          ],
                          "properties": {
                            "address": {
                              "type": "string"
                            },
                            "kind": {
                              "type": "string"
                            },
                            "owner": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "timelockDelaySeconds": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "safe": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "threshold",
                                "owners"
                              ],
                              "properties": {
                                "threshold": {
                                  "type": "integer"
                                },
                                "owners": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "history": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "events",
                            "complete",
                            "range"
                          ],
                          "properties": {
                            "complete": {
                              "type": "boolean"
                            },
                            "range": {
                              "type": "string"
                            },
                            "events": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "kind",
                                  "blockNumber",
                                  "txHash",
                                  "value",
                                  "timestamp"
                                ],
                                "properties": {
                                  "kind": {
                                    "type": "string"
                                  },
                                  "blockNumber": {
                                    "type": "integer"
                                  },
                                  "txHash": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": "string"
                                  },
                                  "timestamp": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                }
                              }
                            }
                          }
                        },
                        "verification": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "proxy",
                            "implementation"
                          ],
                          "properties": {
                            "proxy": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "name",
                                "match"
                              ],
                              "properties": {
                                "name": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "match": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              }
                            },
                            "implementation": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "name",
                                "match"
                              ],
                              "properties": {
                                "name": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "match": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              }
                            }
                          }
                        },
                        "bytecode": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "size",
                            "minimalProxyTarget",
                            "eip7702Delegate",
                            "hasDelegatecall",
                            "hasSelfdestruct",
                            "selectors",
                            "upgradeFunctions",
                            "referencesSlots"
                          ],
                          "properties": {
                            "size": {
                              "type": "integer"
                            },
                            "minimalProxyTarget": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "eip7702Delegate": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "hasDelegatecall": {
                              "type": "boolean"
                            },
                            "hasSelfdestruct": {
                              "type": "boolean"
                            },
                            "selectors": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "upgradeFunctions": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "referencesSlots": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "severity",
                              "finding"
                            ],
                            "properties": {
                              "severity": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low",
                                  "info"
                                ]
                              },
                              "finding": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "graph": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "nodes",
                            "edges"
                          ],
                          "properties": {
                            "nodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "id",
                                  "kind",
                                  "label"
                                ],
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "kind": {
                                    "type": "string"
                                  },
                                  "label": {
                                    "type": "string"
                                  }
                                }
                              }
                            },
                            "edges": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "from",
                                  "to",
                                  "relation"
                                ],
                                "properties": {
                                  "from": {
                                    "type": "string"
                                  },
                                  "to": {
                                    "type": "string"
                                  },
                                  "relation": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/contracts/{chain}/{address}/upgrades": {
      "get": {
        "operationId": "contractUpgradeHistory",
        "summary": "Contract upgrade history",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "chain",
            "in": "path",
            "description": "One of ethereum, base, arbitrum, optimism, polygon, avalanche, bsc",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "address",
            "in": "path",
            "description": "0x-prefixed address",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "mode",
                        "chain",
                        "address",
                        "proxyType",
                        "upgradeable",
                        "implementation",
                        "beacon",
                        "admin",
                        "history",
                        "verification",
                        "bytecode",
                        "findings",
                        "graph"
                      ],
                      "properties": {
                        "mode": {
                          "type": "string",
                          "enum": [
                            "lookup",
                            "bytecode"
                          ]
                        },
                        "chain": {
                          "type": "string"
                        },
                        "address": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "proxyType": {
                          "type": "string",
                          "enum": [
                            "eip1967-transparent",
                            "eip1967-uups",
                            "eip1967-beacon",
                            "eip1167-minimal-proxy",
                            "safe-proxy",
                            "legacy-zeppelinos",
                            "eip7702-delegated-eoa",
                            "eoa",
                            "not-a-proxy",
                            "unknown-delegatecall"
                          ]
                        },
                        "upgradeable": {
                          "type": "string",
                          "enum": [
                            "yes",
                            "no",
                            "unknown"
                          ]
                        },
                        "implementation": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "beacon": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "admin": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "address",
                            "kind",
                            "safe",
                            "timelockDelaySeconds",
                            "owner"
                          ],
                          "properties": {
                            "address": {
                              "type": "string"
                            },
                            "kind": {
                              "type": "string"
                            },
                            "owner": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "timelockDelaySeconds": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "safe": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "threshold",
                                "owners"
                              ],
                              "properties": {
                                "threshold": {
                                  "type": "integer"
                                },
                                "owners": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "history": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "events",
                            "complete",
                            "range"
                          ],
                          "properties": {
                            "complete": {
                              "type": "boolean"
                            },
                            "range": {
                              "type": "string"
                            },
                            "events": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "kind",
                                  "blockNumber",
                                  "txHash",
                                  "value",
                                  "timestamp"
                                ],
                                "properties": {
                                  "kind": {
                                    "type": "string"
                                  },
                                  "blockNumber": {
                                    "type": "integer"
                                  },
                                  "txHash": {
                                    "type": "string"
                                  },
                                  "value": {
                                    "type": "string"
                                  },
                                  "timestamp": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  }
                                }
                              }
                            }
                          }
                        },
                        "verification": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "proxy",
                            "implementation"
                          ],
                          "properties": {
                            "proxy": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "name",
                                "match"
                              ],
                              "properties": {
                                "name": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "match": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              }
                            },
                            "implementation": {
                              "type": [
                                "object",
                                "null"
                              ],
                              "additionalProperties": false,
                              "required": [
                                "name",
                                "match"
                              ],
                              "properties": {
                                "name": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "match": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                }
                              }
                            }
                          }
                        },
                        "bytecode": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "size",
                            "minimalProxyTarget",
                            "eip7702Delegate",
                            "hasDelegatecall",
                            "hasSelfdestruct",
                            "selectors",
                            "upgradeFunctions",
                            "referencesSlots"
                          ],
                          "properties": {
                            "size": {
                              "type": "integer"
                            },
                            "minimalProxyTarget": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "eip7702Delegate": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "hasDelegatecall": {
                              "type": "boolean"
                            },
                            "hasSelfdestruct": {
                              "type": "boolean"
                            },
                            "selectors": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "upgradeFunctions": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "referencesSlots": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "severity",
                              "finding"
                            ],
                            "properties": {
                              "severity": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low",
                                  "info"
                                ]
                              },
                              "finding": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "graph": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "nodes",
                            "edges"
                          ],
                          "properties": {
                            "nodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "id",
                                  "kind",
                                  "label"
                                ],
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "kind": {
                                    "type": "string"
                                  },
                                  "label": {
                                    "type": "string"
                                  }
                                }
                              }
                            },
                            "edges": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "from",
                                  "to",
                                  "relation"
                                ],
                                "properties": {
                                  "from": {
                                    "type": "string"
                                  },
                                  "to": {
                                    "type": "string"
                                  },
                                  "relation": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/domains/{domain}": {
      "get": {
        "operationId": "dNSRecordsEMailSecurityAndTLSCertificate",
        "summary": "DNS records, e-mail security and TLS certificate",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "description": "Public domain name",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "domain",
                        "records",
                        "email",
                        "caaIssuers",
                        "certificate",
                        "ctLog",
                        "findings"
                      ],
                      "properties": {
                        "domain": {
                          "type": "string"
                        },
                        "records": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "email": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "spf",
                            "spfLookups",
                            "dmarc",
                            "dmarcPolicy",
                            "mtaSts"
                          ],
                          "properties": {
                            "spf": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "spfLookups": {
                              "type": "integer"
                            },
                            "dmarc": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "dmarcPolicy": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "mtaSts": {
                              "type": [
                                "string",
                                "null"
                              ]
                            }
                          }
                        },
                        "caaIssuers": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "certificate": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "subject",
                            "issuer",
                            "validFrom",
                            "validTo",
                            "daysLeft",
                            "san",
                            "keyType",
                            "keyBits",
                            "serialNumber",
                            "fingerprint256",
                            "chainLength",
                            "hostnameMatches",
                            "authorized",
                            "authorizationError",
                            "protocol",
                            "servedFrom"
                          ],
                          "properties": {
                            "subject": {
                              "type": "string"
                            },
                            "issuer": {
                              "type": "string"
                            },
                            "validFrom": {
                              "type": "string"
                            },
                            "validTo": {
                              "type": "string"
                            },
                            "daysLeft": {
                              "type": "integer"
                            },
                            "san": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "keyType": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "keyBits": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "serialNumber": {
                              "type": "string"
                            },
                            "fingerprint256": {
                              "type": "string"
                            },
                            "chainLength": {
                              "type": "integer"
                            },
                            "hostnameMatches": {
                              "type": "boolean"
                            },
                            "authorized": {
                              "type": "boolean"
                            },
                            "authorizationError": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "protocol": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "servedFrom": {
                              "type": "string"
                            }
                          }
                        },
                        "ctLog": {
                          "type": [
                            "array",
                            "null"
                          ],
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "id",
                              "issuer",
                              "names",
                              "notBefore",
                              "notAfter"
                            ],
                            "properties": {
                              "id": {
                                "type": "integer"
                              },
                              "issuer": {
                                "type": "string"
                              },
                              "names": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "notBefore": {
                                "type": "string"
                              },
                              "notAfter": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "severity",
                              "area",
                              "finding"
                            ],
                            "properties": {
                              "severity": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low",
                                  "info"
                                ]
                              },
                              "area": {
                                "type": "string"
                              },
                              "finding": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/packages/{ecosystem}/{name}/{version}": {
      "get": {
        "operationId": "knownVulnerabilitiesOfAPackageVersion",
        "summary": "Known vulnerabilities of a package version",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "ecosystem",
            "in": "path",
            "description": "npm, PyPI, Go, crates.io, …",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "URL-encoded package name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "version",
            "in": "path",
            "description": "Exact version",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "manifestKind",
                        "packagesChecked",
                        "skipped",
                        "vulnerablePackages",
                        "counts",
                        "findings",
                        "advisory"
                      ],
                      "properties": {
                        "manifestKind": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "packagesChecked": {
                          "type": "integer"
                        },
                        "skipped": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "vulnerablePackages": {
                          "type": "integer"
                        },
                        "counts": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "CRITICAL",
                            "HIGH",
                            "MODERATE",
                            "LOW",
                            "UNKNOWN"
                          ],
                          "properties": {
                            "CRITICAL": {
                              "type": "integer"
                            },
                            "HIGH": {
                              "type": "integer"
                            },
                            "MODERATE": {
                              "type": "integer"
                            },
                            "LOW": {
                              "type": "integer"
                            },
                            "UNKNOWN": {
                              "type": "integer"
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "ecosystem",
                              "name",
                              "version",
                              "exact",
                              "upgradeTo",
                              "vulnerabilities"
                            ],
                            "properties": {
                              "ecosystem": {
                                "type": "string"
                              },
                              "name": {
                                "type": "string"
                              },
                              "version": {
                                "type": "string"
                              },
                              "exact": {
                                "type": "boolean"
                              },
                              "upgradeTo": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "vulnerabilities": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "id",
                                    "aliases",
                                    "summary",
                                    "severity",
                                    "cvss",
                                    "published",
                                    "fixedIn",
                                    "url"
                                  ],
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "aliases": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      }
                                    },
                                    "summary": {
                                      "type": "string"
                                    },
                                    "severity": {
                                      "type": "string",
                                      "enum": [
                                        "CRITICAL",
                                        "HIGH",
                                        "MODERATE",
                                        "LOW",
                                        "UNKNOWN"
                                      ]
                                    },
                                    "cvss": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "published": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "fixedIn": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "url": {
                                      "type": "string"
                                    }
                                  }
                                }
                              }
                            }
                          }
                        },
                        "advisory": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "id",
                            "aliases",
                            "summary",
                            "severity",
                            "cvss",
                            "published",
                            "fixedIn",
                            "url",
                            "affectedPackages"
                          ],
                          "properties": {
                            "id": {
                              "type": "string"
                            },
                            "aliases": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "summary": {
                              "type": "string"
                            },
                            "severity": {
                              "type": "string",
                              "enum": [
                                "CRITICAL",
                                "HIGH",
                                "MODERATE",
                                "LOW",
                                "UNKNOWN"
                              ]
                            },
                            "cvss": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "published": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "fixedIn": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "url": {
                              "type": "string"
                            },
                            "affectedPackages": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/advisories/{id}": {
      "get": {
        "operationId": "vulnerabilityAdvisory",
        "summary": "Vulnerability advisory",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "GHSA / CVE / PYSEC / RUSTSEC id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "manifestKind",
                        "packagesChecked",
                        "skipped",
                        "vulnerablePackages",
                        "counts",
                        "findings",
                        "advisory"
                      ],
                      "properties": {
                        "manifestKind": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "packagesChecked": {
                          "type": "integer"
                        },
                        "skipped": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "vulnerablePackages": {
                          "type": "integer"
                        },
                        "counts": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "CRITICAL",
                            "HIGH",
                            "MODERATE",
                            "LOW",
                            "UNKNOWN"
                          ],
                          "properties": {
                            "CRITICAL": {
                              "type": "integer"
                            },
                            "HIGH": {
                              "type": "integer"
                            },
                            "MODERATE": {
                              "type": "integer"
                            },
                            "LOW": {
                              "type": "integer"
                            },
                            "UNKNOWN": {
                              "type": "integer"
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "ecosystem",
                              "name",
                              "version",
                              "exact",
                              "upgradeTo",
                              "vulnerabilities"
                            ],
                            "properties": {
                              "ecosystem": {
                                "type": "string"
                              },
                              "name": {
                                "type": "string"
                              },
                              "version": {
                                "type": "string"
                              },
                              "exact": {
                                "type": "boolean"
                              },
                              "upgradeTo": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "vulnerabilities": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "id",
                                    "aliases",
                                    "summary",
                                    "severity",
                                    "cvss",
                                    "published",
                                    "fixedIn",
                                    "url"
                                  ],
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "aliases": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      }
                                    },
                                    "summary": {
                                      "type": "string"
                                    },
                                    "severity": {
                                      "type": "string",
                                      "enum": [
                                        "CRITICAL",
                                        "HIGH",
                                        "MODERATE",
                                        "LOW",
                                        "UNKNOWN"
                                      ]
                                    },
                                    "cvss": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "published": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "fixedIn": {
                                      "type": [
                                        "string",
                                        "null"
                                      ]
                                    },
                                    "url": {
                                      "type": "string"
                                    }
                                  }
                                }
                              }
                            }
                          }
                        },
                        "advisory": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "id",
                            "aliases",
                            "summary",
                            "severity",
                            "cvss",
                            "published",
                            "fixedIn",
                            "url",
                            "affectedPackages"
                          ],
                          "properties": {
                            "id": {
                              "type": "string"
                            },
                            "aliases": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "summary": {
                              "type": "string"
                            },
                            "severity": {
                              "type": "string",
                              "enum": [
                                "CRITICAL",
                                "HIGH",
                                "MODERATE",
                                "LOW",
                                "UNKNOWN"
                              ]
                            },
                            "cvss": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "published": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "fixedIn": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "url": {
                              "type": "string"
                            },
                            "affectedPackages": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/mcp/servers": {
      "get": {
        "operationId": "inspectARemoteMCPServer",
        "summary": "Inspect a remote MCP server",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "description": "MCP endpoint URL",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "mode",
                        "server",
                        "tools",
                        "resources",
                        "prompts",
                        "permissions",
                        "changes",
                        "registry"
                      ],
                      "properties": {
                        "mode": {
                          "type": "string",
                          "enum": [
                            "connect",
                            "paste",
                            "registry"
                          ]
                        },
                        "server": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "url",
                            "protocolVersion",
                            "name",
                            "version",
                            "authRequired",
                            "instructions",
                            "capabilities"
                          ],
                          "properties": {
                            "url": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "protocolVersion": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "name": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "version": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "authRequired": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "instructions": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "capabilities": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "tools": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "title",
                              "description",
                              "capabilities",
                              "risk",
                              "annotations",
                              "issues",
                              "schema",
                              "fingerprint"
                            ],
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "title": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "description": {
                                "type": "string"
                              },
                              "capabilities": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "read",
                                    "write",
                                    "delete",
                                    "execute",
                                    "network",
                                    "filesystem",
                                    "payment",
                                    "messaging",
                                    "secrets"
                                  ]
                                }
                              },
                              "risk": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low"
                                ]
                              },
                              "annotations": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "readOnlyHint",
                                  "destructiveHint",
                                  "idempotentHint",
                                  "openWorldHint"
                                ],
                                "properties": {
                                  "readOnlyHint": {
                                    "type": [
                                      "boolean",
                                      "null"
                                    ]
                                  },
                                  "destructiveHint": {
                                    "type": [
                                      "boolean",
                                      "null"
                                    ]
                                  },
                                  "idempotentHint": {
                                    "type": [
                                      "boolean",
                                      "null"
                                    ]
                                  },
                                  "openWorldHint": {
                                    "type": [
                                      "boolean",
                                      "null"
                                    ]
                                  }
                                }
                              },
                              "issues": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "schema": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "properties",
                                  "required",
                                  "describedProperties",
                                  "closed"
                                ],
                                "properties": {
                                  "properties": {
                                    "type": "integer"
                                  },
                                  "required": {
                                    "type": "integer"
                                  },
                                  "describedProperties": {
                                    "type": "integer"
                                  },
                                  "closed": {
                                    "type": "boolean"
                                  }
                                }
                              },
                              "fingerprint": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "resources": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "uri",
                              "name",
                              "mimeType"
                            ],
                            "properties": {
                              "uri": {
                                "type": "string"
                              },
                              "name": {
                                "type": "string"
                              },
                              "mimeType": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "prompts": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "description"
                            ],
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "description": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "permissions": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          },
                          "description": "capability → tool names"
                        },
                        "changes": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "previousCheck",
                            "added",
                            "removed",
                            "changed"
                          ],
                          "properties": {
                            "previousCheck": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "added": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "removed": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "changed": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "registry": {
                          "type": [
                            "array",
                            "null"
                          ],
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "description",
                              "version",
                              "repository",
                              "remotes",
                              "packages"
                            ],
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "description": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "version": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "repository": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "remotes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "packages": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/asns/{asn}": {
      "get": {
        "operationId": "autonomousSystemHolderNeighboursAndPrefixes",
        "summary": "Autonomous system: holder, neighbours and prefixes",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "asn",
            "in": "path",
            "description": "AS number without the AS prefix",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "asn",
                        "holder",
                        "country",
                        "announced",
                        "block",
                        "neighbourCounts",
                        "neighbours",
                        "prefixCounts",
                        "prefixes",
                        "queryTime",
                        "prefixWindow",
                        "findings"
                      ],
                      "properties": {
                        "asn": {
                          "type": "integer"
                        },
                        "holder": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "country": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "announced": {
                          "type": "boolean"
                        },
                        "block": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "resource",
                            "description"
                          ],
                          "properties": {
                            "resource": {
                              "type": "string"
                            },
                            "description": {
                              "type": "string"
                            }
                          }
                        },
                        "neighbourCounts": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "left",
                            "right",
                            "uncertain",
                            "unique"
                          ],
                          "properties": {
                            "left": {
                              "type": "integer"
                            },
                            "right": {
                              "type": "integer"
                            },
                            "uncertain": {
                              "type": "integer"
                            },
                            "unique": {
                              "type": "integer"
                            }
                          }
                        },
                        "neighbours": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "asn",
                              "type",
                              "power",
                              "v4Peers",
                              "v6Peers",
                              "holder"
                            ],
                            "properties": {
                              "asn": {
                                "type": "integer"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "left",
                                  "right",
                                  "uncertain"
                                ]
                              },
                              "power": {
                                "type": "integer"
                              },
                              "v4Peers": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              },
                              "v6Peers": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              },
                              "holder": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "prefixCounts": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "ipv4",
                            "ipv6",
                            "ipv4Slash24Equivalents",
                            "ipv6Slash48Equivalents"
                          ],
                          "properties": {
                            "ipv4": {
                              "type": "integer"
                            },
                            "ipv6": {
                              "type": "integer"
                            },
                            "ipv4Slash24Equivalents": {
                              "type": "integer"
                            },
                            "ipv6Slash48Equivalents": {
                              "type": "integer"
                            }
                          }
                        },
                        "prefixes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "prefix",
                              "family",
                              "firstSeen",
                              "lastSeen",
                              "periods"
                            ],
                            "properties": {
                              "prefix": {
                                "type": "string"
                              },
                              "family": {
                                "type": "string",
                                "enum": [
                                  "IPv4",
                                  "IPv6"
                                ]
                              },
                              "firstSeen": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "lastSeen": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "periods": {
                                "type": "integer"
                              }
                            }
                          }
                        },
                        "queryTime": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "prefixWindow": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "start",
                            "end"
                          ],
                          "properties": {
                            "start": {
                              "type": "string"
                            },
                            "end": {
                              "type": "string"
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "severity",
                              "area",
                              "finding"
                            ],
                            "properties": {
                              "severity": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low",
                                  "info"
                                ]
                              },
                              "area": {
                                "type": "string"
                              },
                              "finding": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/routes/{resource}": {
      "get": {
        "operationId": "bGPOriginRPKIAndRoutingHistoryOfAnIPOrPrefix",
        "summary": "BGP origin, RPKI and routing history of an IP or prefix",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "resource",
            "in": "path",
            "description": "URL-encoded IP address or prefix",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "queried",
                        "prefix",
                        "family",
                        "announced",
                        "block",
                        "origins",
                        "visibility",
                        "firstSeen",
                        "lastSeen",
                        "moreSpecifics",
                        "moreSpecificsCount",
                        "lessSpecifics",
                        "history",
                        "historicalOrigins",
                        "events",
                        "lookingGlass",
                        "findings"
                      ],
                      "properties": {
                        "queried": {
                          "type": "string"
                        },
                        "prefix": {
                          "type": "string"
                        },
                        "family": {
                          "type": "string",
                          "enum": [
                            "IPv4",
                            "IPv6"
                          ]
                        },
                        "announced": {
                          "type": "boolean"
                        },
                        "block": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "resource",
                            "description"
                          ],
                          "properties": {
                            "resource": {
                              "type": "string"
                            },
                            "description": {
                              "type": "string"
                            }
                          }
                        },
                        "origins": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "asn",
                              "holder",
                              "rpki",
                              "validatingRoas",
                              "irrRouteObjects"
                            ],
                            "properties": {
                              "asn": {
                                "type": "integer"
                              },
                              "holder": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              },
                              "rpki": {
                                "type": "string",
                                "enum": [
                                  "valid",
                                  "invalid_asn",
                                  "invalid_length",
                                  "unknown",
                                  "not-checked"
                                ]
                              },
                              "validatingRoas": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "origin",
                                    "prefix",
                                    "maxLength",
                                    "validity"
                                  ],
                                  "properties": {
                                    "origin": {
                                      "type": "integer"
                                    },
                                    "prefix": {
                                      "type": "string"
                                    },
                                    "maxLength": {
                                      "type": [
                                        "integer",
                                        "null"
                                      ]
                                    },
                                    "validity": {
                                      "type": "string"
                                    }
                                  }
                                }
                              },
                              "irrRouteObjects": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              }
                            }
                          }
                        },
                        "visibility": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "family",
                            "peersSeeing",
                            "totalPeers",
                            "percent"
                          ],
                          "properties": {
                            "family": {
                              "type": "string"
                            },
                            "peersSeeing": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "totalPeers": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "percent": {
                              "type": [
                                "number",
                                "null"
                              ]
                            }
                          }
                        },
                        "firstSeen": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "time",
                            "origin",
                            "prefix"
                          ],
                          "properties": {
                            "time": {
                              "type": "string"
                            },
                            "origin": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "prefix": {
                              "type": "string"
                            }
                          }
                        },
                        "lastSeen": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "time",
                            "origin",
                            "prefix"
                          ],
                          "properties": {
                            "time": {
                              "type": "string"
                            },
                            "origin": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "prefix": {
                              "type": "string"
                            }
                          }
                        },
                        "moreSpecifics": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "prefix",
                              "origin"
                            ],
                            "properties": {
                              "prefix": {
                                "type": "string"
                              },
                              "origin": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "moreSpecificsCount": {
                          "type": "integer"
                        },
                        "lessSpecifics": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "prefix",
                              "origin"
                            ],
                            "properties": {
                              "prefix": {
                                "type": "string"
                              },
                              "origin": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "history": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "origin",
                              "prefix",
                              "firstSeen",
                              "lastSeen",
                              "segments",
                              "current",
                              "maxPeersSeeing"
                            ],
                            "properties": {
                              "origin": {
                                "type": "integer"
                              },
                              "prefix": {
                                "type": "string"
                              },
                              "firstSeen": {
                                "type": "string"
                              },
                              "lastSeen": {
                                "type": "string"
                              },
                              "segments": {
                                "type": "integer"
                              },
                              "current": {
                                "type": "boolean"
                              },
                              "maxPeersSeeing": {
                                "type": [
                                  "number",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "historicalOrigins": {
                          "type": "array",
                          "items": {
                            "type": "integer"
                          }
                        },
                        "events": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "time",
                              "label",
                              "detail",
                              "tone"
                            ],
                            "properties": {
                              "time": {
                                "type": "string"
                              },
                              "label": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              },
                              "tone": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "lookingGlass": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "collectors",
                            "peers",
                            "upstreams",
                            "averagePathLength",
                            "samplePaths"
                          ],
                          "properties": {
                            "collectors": {
                              "type": "integer"
                            },
                            "peers": {
                              "type": "integer"
                            },
                            "averagePathLength": {
                              "type": [
                                "number",
                                "null"
                              ]
                            },
                            "upstreams": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "asn",
                                  "paths"
                                ],
                                "properties": {
                                  "asn": {
                                    "type": "integer"
                                  },
                                  "paths": {
                                    "type": "integer"
                                  }
                                }
                              }
                            },
                            "samplePaths": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "collector",
                                  "peer",
                                  "path",
                                  "lastUpdated"
                                ],
                                "properties": {
                                  "collector": {
                                    "type": "string"
                                  },
                                  "peer": {
                                    "type": "string"
                                  },
                                  "path": {
                                    "type": "string"
                                  },
                                  "lastUpdated": {
                                    "type": "string"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "severity",
                              "area",
                              "finding"
                            ],
                            "properties": {
                              "severity": {
                                "type": "string",
                                "enum": [
                                  "high",
                                  "medium",
                                  "low",
                                  "info"
                                ]
                              },
                              "area": {
                                "type": "string"
                              },
                              "finding": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/images": {
      "get": {
        "operationId": "containerImageLayersConfigBaseImageAndSignature",
        "summary": "Container image layers, config, base image and signature",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "ref",
            "in": "query",
            "description": "Image reference, e.g. docker.io/library/nginx:1.27",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "image",
                        "digest",
                        "mediaType",
                        "platforms",
                        "attestationManifests",
                        "selectedPlatform",
                        "layers",
                        "totalCompressedBytes",
                        "config",
                        "baseImage",
                        "signature",
                        "findings"
                      ],
                      "properties": {
                        "image": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "digest": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "mediaType": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "platforms": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "platform",
                              "digest",
                              "size"
                            ],
                            "properties": {
                              "platform": {
                                "type": "string"
                              },
                              "digest": {
                                "type": "string"
                              },
                              "size": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "attestationManifests": {
                          "type": "integer"
                        },
                        "selectedPlatform": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "layers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "digest",
                              "size",
                              "mediaType"
                            ],
                            "properties": {
                              "digest": {
                                "type": "string"
                              },
                              "size": {
                                "type": [
                                  "integer",
                                  "null"
                                ]
                              },
                              "mediaType": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "totalCompressedBytes": {
                          "type": "integer"
                        },
                        "config": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "digestVerified",
                            "created",
                            "ageDays",
                            "os",
                            "architecture",
                            "user",
                            "runsAsRoot",
                            "envNames",
                            "labels",
                            "exposedPorts",
                            "entrypoint",
                            "cmd",
                            "historySteps",
                            "healthcheck"
                          ],
                          "properties": {
                            "digestVerified": {
                              "type": [
                                "boolean",
                                "null"
                              ]
                            },
                            "created": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "ageDays": {
                              "type": [
                                "integer",
                                "null"
                              ]
                            },
                            "os": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "architecture": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "user": {
                              "type": "string"
                            },
                            "runsAsRoot": {
                              "type": "boolean"
                            },
                            "envNames": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "labels": {
                              "type": "object",
                              "additionalProperties": {
                                "type": "string"
                              }
                            },
                            "exposedPorts": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "entrypoint": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "cmd": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "healthcheck": {
                              "type": "boolean"
                            },
                            "historySteps": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "created",
                                  "createdBy",
                                  "emptyLayer"
                                ],
                                "properties": {
                                  "created": {
                                    "type": [
                                      "string",
                                      "null"
                                    ]
                                  },
                                  "createdBy": {
                                    "type": "string"
                                  },
                                  "emptyLayer": {
                                    "type": "boolean"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "baseImage": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "additionalProperties": false,
                          "required": [
                            "label",
                            "distro",
                            "version",
                            "evidence",
                            "eol",
                            "status",
                            "note"
                          ],
                          "properties": {
                            "label": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "distro": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "version": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "evidence": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "eol": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "supported",
                                "eol",
                                "extended-only",
                                "unknown"
                              ]
                            },
                            "note": {
                              "type": "string"
                            }
                          }
                        },
                        "signature": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "checked",
                            "cosignTag",
                            "found"
                          ],
                          "properties": {
                            "checked": {
                              "type": "boolean"
                            },
                            "cosignTag": {
                              "type": [
                                "string",
                                "null"
                              ]
                            },
                            "found": {
                              "type": [
                                "boolean",
                                "null"
                              ]
                            }
                          }
                        },
                        "findings": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "level",
                              "text"
                            ],
                            "properties": {
                              "level": {
                                "type": "string",
                                "enum": [
                                  "good",
                                  "info",
                                  "warning",
                                  "bad"
                                ]
                              },
                              "text": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    },
    "/api/v1/ai-readiness": {
      "get": {
        "operationId": "aIReadinessOfAWebPage",
        "summary": "AI readiness of a web page",
        "tags": [
          "explorer"
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "description": "Page URL",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Entity data with sources, retrieval time and schema version",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "schemaVersion",
                    "tool",
                    "computedAt",
                    "inputs",
                    "summary",
                    "result",
                    "units",
                    "assumptions",
                    "sources",
                    "warnings",
                    "presentation",
                    "links"
                  ],
                  "properties": {
                    "schemaVersion": {
                      "type": "string",
                      "const": "1.0"
                    },
                    "tool": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "name",
                        "version"
                      ],
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "version": {
                          "type": "string"
                        }
                      }
                    },
                    "computedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "inputs": {
                      "type": "object",
                      "description": "Normalised inputs actually used, including applied defaults."
                    },
                    "summary": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "url",
                        "score",
                        "grade",
                        "title",
                        "bots",
                        "jsonLdTypes",
                        "checks",
                        "topFixes"
                      ],
                      "properties": {
                        "url": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "score": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 100
                        },
                        "grade": {
                          "type": "string",
                          "enum": [
                            "A",
                            "B",
                            "C",
                            "D",
                            "F"
                          ]
                        },
                        "title": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "bots": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "agent",
                              "operator",
                              "purpose",
                              "allowed",
                              "matchedGroup",
                              "rule"
                            ],
                            "properties": {
                              "agent": {
                                "type": "string"
                              },
                              "operator": {
                                "type": "string"
                              },
                              "purpose": {
                                "type": "string",
                                "enum": [
                                  "training",
                                  "search",
                                  "user-request"
                                ]
                              },
                              "allowed": {
                                "type": "boolean"
                              },
                              "matchedGroup": {
                                "type": "string"
                              },
                              "rule": {
                                "type": [
                                  "string",
                                  "null"
                                ]
                              }
                            }
                          }
                        },
                        "jsonLdTypes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "checks": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "id",
                              "area",
                              "status",
                              "points",
                              "max",
                              "detail"
                            ],
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "area": {
                                "type": "string"
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "pass",
                                  "warn",
                                  "fail",
                                  "info"
                                ]
                              },
                              "points": {
                                "type": "integer"
                              },
                              "max": {
                                "type": "integer"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        },
                        "topFixes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "units": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    "assumptions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "title"
                        ],
                        "properties": {
                          "title": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "publisher": {
                            "type": "string"
                          },
                          "retrievedAt": {
                            "type": "string"
                          },
                          "note": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "presentation": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      },
                      "description": "Display blocks used by the human page (same data)."
                    },
                    "links": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "human",
                        "api",
                        "openapi",
                        "methodology"
                      ],
                      "properties": {
                        "human": {
                          "type": "string",
                          "format": "uri"
                        },
                        "api": {
                          "type": "string",
                          "format": "uri"
                        },
                        "openapi": {
                          "type": "string",
                          "format": "uri"
                        },
                        "methodology": {
                          "type": "string",
                          "format": "uri"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Invalid identifier"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Problem": {
        "type": "object",
        "description": "RFC 9457 problem details. 422 responses include per-field `errors`.",
        "required": [
          "type",
          "title",
          "status",
          "detail"
        ],
        "properties": {
          "type": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "integer"
          },
          "detail": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "field",
                "message"
              ],
              "properties": {
                "field": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "ExploreInput": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "query": {
            "title": "What do you want to explore?",
            "type": "string",
            "maxLength": 2048
          },
          "chain": {
            "title": "Chain (for hashes and addresses)",
            "type": "string",
            "enum": [
              "ethereum",
              "base",
              "arbitrum",
              "optimism",
              "polygon",
              "avalanche",
              "bsc"
            ],
            "default": "ethereum"
          }
        },
        "required": [
          "query"
        ]
      },
      "ExploreResult": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "tool",
          "computedAt",
          "inputs",
          "summary",
          "result",
          "units",
          "assumptions",
          "sources",
          "warnings",
          "presentation",
          "links"
        ],
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "1.0"
          },
          "tool": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "id",
              "name",
              "version"
            ],
            "properties": {
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "version": {
                "type": "string"
              }
            }
          },
          "computedAt": {
            "type": "string",
            "format": "date-time"
          },
          "inputs": {
            "type": "object",
            "description": "Normalised inputs actually used, including applied defaults."
          },
          "summary": {
            "type": "string"
          },
          "result": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "query",
              "kind",
              "explorer",
              "label",
              "links",
              "summary",
              "result"
            ],
            "properties": {
              "query": {
                "type": "string"
              },
              "kind": {
                "type": "string",
                "enum": [
                  "transaction",
                  "contract",
                  "domain",
                  "package",
                  "advisory",
                  "mcp-server",
                  "website"
                ]
              },
              "explorer": {
                "type": "string",
                "description": "Tool id that produced the result"
              },
              "label": {
                "type": "string"
              },
              "links": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "human",
                  "api",
                  "explorer"
                ],
                "properties": {
                  "human": {
                    "type": "string"
                  },
                  "api": {
                    "type": "string"
                  },
                  "explorer": {
                    "type": "string"
                  }
                }
              },
              "summary": {
                "type": "string"
              },
              "result": {
                "type": "object",
                "description": "The explorer's own result object (see that tool's schema)."
              }
            }
          },
          "units": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "assumptions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "title"
              ],
              "properties": {
                "title": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "publisher": {
                  "type": "string"
                },
                "retrievedAt": {
                  "type": "string"
                },
                "note": {
                  "type": "string"
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "presentation": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "description": "Display blocks used by the human page (same data)."
          },
          "links": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "human",
              "api",
              "openapi",
              "methodology"
            ],
            "properties": {
              "human": {
                "type": "string",
                "format": "uri"
              },
              "api": {
                "type": "string",
                "format": "uri"
              },
              "openapi": {
                "type": "string",
                "format": "uri"
              },
              "methodology": {
                "type": "string",
                "format": "uri"
              }
            }
          }
        }
      }
    }
  }
}