{
  "id": "censys",
  "name": "Censys CLI",
  "homepage": "https://github.com/censys/censys-python",
  "description": "An easy-to-use and lightweight API wrapper for Censys APIs.",
  "executables": [
    "censys"
  ],
  "dotfiles": {
    "paths": [],
    "secret": [
      "[configHome]/censys/censys.cfg"
    ],
    "side_effect": false
  },
  "commands": {
    "format": 1,
    "label": "Censys CLI",
    "description": "Search Censys data, look up a host or certificate, or enumerate subdomains. Credentials (censys config), ASM seed management and account commands are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "docs",
        "kind": "manual",
        "url": "https://censys-python.readthedocs.io/en/stable/usage-cli.html",
        "revision": "stable 2026-10-27",
        "evidence": "censys search 'ip: 8.8.8.0/16' --pages -1\ncensys search 'parsed.subject_dn: \"censys.io\"' --index-type certificates\ncensys search 'parsed.subject.country: AU' --index-type certificates --fields parsed.issuer.organization\ncensys view 8.8.8.8 -o google.json\ncensys view 1.1.1.1 --at-time 2023-01-01\ncensys subdomains censys.io --max-records 10\ncensys subdomains censys.io --json\n"
      }
    ],
    "subcommand": [
      {
        "path": [
          "search"
        ],
        "label": "Search",
        "description": "Run a Censys search query against hosts or certificates.",
        "source": [
          {
            "id": "docs",
            "kind": "manual",
            "url": "https://censys-python.readthedocs.io/en/stable/usage-cli.html",
            "revision": "stable 2026-10-27",
            "evidence": "censys search 'ip: 8.8.8.0/16' --pages -1\ncensys search 'parsed.subject_dn: \"censys.io\"' --index-type certificates\ncensys search 'parsed.subject.country: AU' --index-type certificates --fields parsed.issuer.organization\n"
          }
        ],
        "field": [
          {
            "id": "query",
            "label": "Query",
            "type": "string",
            "position": 0,
            "min": 1,
            "sources": [
              "docs"
            ]
          },
          {
            "id": "index_type",
            "label": "Index",
            "type": "enum",
            "option": [
              "--index-type"
            ],
            "choices": [
              {
                "value": "hosts",
                "label": "Hosts"
              },
              {
                "value": "certificates",
                "label": "Certificates"
              }
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "pages",
            "label": "Pages",
            "description": "-1 fetches all pages.",
            "type": "integer",
            "option": [
              "--pages"
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "fields",
            "label": "Fields",
            "description": "Fields to return (certificates index).",
            "type": "string",
            "option": [
              "--fields"
            ],
            "sources": [
              "docs"
            ]
          }
        ],
        "task": [
          {
            "id": "search",
            "label": "Search",
            "fields": [
              "query",
              "index_type",
              "pages",
              "fields"
            ],
            "required": [
              "query"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "query",
              "index_type",
              "pages",
              "fields"
            ]
          }
        ]
      },
      {
        "path": [
          "view"
        ],
        "label": "View",
        "description": "View one host (IP) or certificate (fingerprint).",
        "source": [
          {
            "id": "docs",
            "kind": "manual",
            "url": "https://censys-python.readthedocs.io/en/stable/usage-cli.html",
            "revision": "stable 2026-10-27",
            "evidence": "censys view 9b267decc8d23586dc4c56dd0789574cab0f28581ef354ff2fcec8ca6d992fc2 --index-type certificates\ncensys view 8.8.8.8 -o google.json\ncensys view 1.1.1.1 --at-time 2023-01-01\n"
          }
        ],
        "field": [
          {
            "id": "asset",
            "label": "IP or certificate fingerprint",
            "type": "string",
            "position": 0,
            "min": 1,
            "sources": [
              "docs"
            ]
          },
          {
            "id": "index_type",
            "label": "Index",
            "type": "enum",
            "option": [
              "--index-type"
            ],
            "choices": [
              {
                "value": "hosts",
                "label": "Hosts"
              },
              {
                "value": "certificates",
                "label": "Certificates"
              }
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "output",
            "label": "Output file",
            "type": "path",
            "option": [
              "-o"
            ],
            "path": {
              "kind": "file",
              "role": "output",
              "must_exist": false
            },
            "effect": "overwrite",
            "sources": [
              "docs"
            ]
          },
          {
            "id": "at_time",
            "label": "At time",
            "description": "Historical view, hosts index only (YYYY-MM-DD).",
            "type": "string",
            "option": [
              "--at-time"
            ],
            "sources": [
              "docs"
            ]
          }
        ],
        "task": [
          {
            "id": "view",
            "label": "View",
            "fields": [
              "asset",
              "index_type",
              "output",
              "at_time"
            ],
            "required": [
              "asset"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "asset",
              "index_type",
              "output",
              "at_time"
            ]
          }
        ]
      },
      {
        "path": [
          "subdomains"
        ],
        "label": "Subdomains",
        "description": "Enumerate subdomains of a domain.",
        "source": [
          {
            "id": "docs",
            "kind": "manual",
            "url": "https://censys-python.readthedocs.io/en/stable/usage-cli.html",
            "revision": "stable 2026-10-27",
            "evidence": "censys subdomains censys.io --max-records 10\ncensys subdomains censys.io --json\n"
          }
        ],
        "field": [
          {
            "id": "domain",
            "label": "Domain",
            "type": "string",
            "position": 0,
            "min": 1,
            "sources": [
              "docs"
            ]
          },
          {
            "id": "max_records",
            "label": "Max records",
            "type": "integer",
            "option": [
              "--max-records"
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "json",
            "label": "JSON output",
            "type": "boolean",
            "option": [
              "--json"
            ],
            "sources": [
              "docs"
            ]
          }
        ],
        "task": [
          {
            "id": "subdomains",
            "label": "Enumerate subdomains",
            "fields": [
              "domain",
              "max_records",
              "json"
            ],
            "required": [
              "domain"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "domain",
              "max_records",
              "json"
            ]
          }
        ]
      }
    ]
  }
}
