{
  "$id": "https://schemas.sand.binaryedge.io/minion/modules/socks",
  "title": "SOCKS Module Body",
  "description": "Schema for SOCKS proxy detection results including SOCKS4 and SOCKS5 protocol support",
  "type": "object",
  "properties": {
    "socks4": {
      "$ref": "#/$defs/version",
      "description": "SOCKS4 protocol detection results"
    },
    "socks5": {
      "$ref": "#/$defs/version",
      "description": "SOCKS5 protocol detection results"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {
    "version": {
      "type": "object",
      "description": "SOCKS protocol version detection result",
      "properties": {
        "state": {
          "type": "string",
          "description": "Current state of the SOCKS proxy",
          "enum": [
            "connect",
            "open",
            "unknown"
          ]
        },
        "exit_ip": {
          "$ref": "/minion/shared-types#/ip-address",
          "description": "Exit IP address revealed through the SOCKS proxy"
        },
        "tor": {
          "type": "boolean",
          "description": "Whether the exit IP is identified as a TOR node"
        }
      },
      "additionalProperties": false
    }
  }
}
