id: runzero
name: runZero
version: 1.0.0
description: "runZero (API v1.0) — asset inventory and network visibility: search and read assets, search services, list sites, and list tasks. Bearer-token authentication; stdlib-only, no extra Python dependencies."
changelog: "1.0.0 — Initial release: search/get assets, search services, list sites, list tasks."
category: asset_management

# Per-instance configuration. Auth header 'Authorization: Bearer <token>' (an
# organization or export API token).
config_schema:
  properties:
    base_url:
      type: string
      description: "runZero console URL"
      default: "https://console.runzero.com"
    token:
      type: string
      description: "Organization API token"
      x-soar-sensitive: true
  required:
    - token

commands:
  - id: list_assets
    name: runzero-list-assets
    description: "Search assets."
    risk: read
    inputs_schema:
      properties:
        search: { type: string, description: "Search expression (e.g. 'os:windows' or an IP)" }
        page: { type: number, description: "Page number (default 1)" }
      required: []
    outputs_schema: { properties: {} }
  - id: get_asset
    name: runzero-get-asset
    description: "Get a single asset by ID."
    risk: read
    inputs_schema:
      properties:
        asset_id: { type: string, description: "Asset ID" }
      required: [asset_id]
    outputs_schema: { properties: {} }
  - id: list_services
    name: runzero-list-services
    description: "Search services."
    risk: read
    inputs_schema:
      properties:
        search: { type: string, description: "Search expression (e.g. 'port:22')" }
      required: []
    outputs_schema: { properties: {} }
  - id: list_sites
    name: runzero-list-sites
    description: "List sites."
    risk: read
    inputs_schema:
      properties: {}
      required: []
    outputs_schema: { properties: {} }
  - id: list_tasks
    name: runzero-list-tasks
    description: "List scan tasks."
    risk: read
    inputs_schema:
      properties:
        search: { type: string, description: "Optional search expression" }
      required: []
    outputs_schema: { properties: {} }

  - id: test_connection
    name: runzero-test-connection
    description: "Verify the API token (used by the Test button)."
    risk: read
    inputs_schema:
      properties: {}
      required: []
    outputs_schema: { properties: {} }
