# OT Compliance Batch Gap Assessment

> OT Compliance Batch Gap Assessment is a paid API for AI agents from ot-intel-api.onrender.com, paid per call via x402, $0.2/call, status unknown (last checked 2026-09-14).

Performs a single aggregated compliance-gap assessment across up to 25 CVEs and/or threat actors, returning deduplicated control gaps and a remediation summary across OT/ICS security frameworks.

## Facts

- Endpoint: GET https://ot-intel-api.onrender.com/ot/compliance/batch
- Price: $0.2/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ot-compliance-batch-gap-assessment-e4d1fa15
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_v-Ib9-PIpw44t8k2X3Gm4

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ot-compliance-batch-gap-assessment-e4d1fa15
```

Example prompt: Run a batch compliance gap assessment for CVE-2023-38802, CVE-2024-12345, and SANDWORM against the IEC 62443-3-3 framework for the energy sector — give me the overall severity and a remediation summary.

## When to prefer this

Use this endpoint when you need to assess compliance gaps for multiple CVEs or threat actors in a single call, saving cost and latency compared to N individual /ot/compliance calls. Prefer it for bulk triage workflows, SOC automation pipelines, or whenever you have a list of 2–25 mixed CVE IDs and actor names and want a single aggregated severity rating and remediation summary.

## Known failure modes

- More than 25 items passed — API rejects with an error
- Invalid CVE format causes item to be misclassified as an actor name
- Unknown framework value returns an error or empty results
- Invalid entity_sector value causes a validation error
- Empty items parameter returns a required-field error
- Network timeout on Render cold-start (free-tier hosting latency spike)

## How this service works

Aggregate compliance-gap assessment across multiple CVEs/actors in one call. Pass items=<comma-separated, max 25> (auto-detects CVE vs actor), optional framework=<value>, entity_sector=<ENERGY|WATER|TRANSPORTATION|GOVERNMENT>. Dedupes triggered controls into one compliance_gap_severity (HIGH/MEDIUM/LOW/CLEAN) plus a remediation summary. Same compliance_mappings data as /ot/compliance — deterministic lookup, LLM only writes prose. Cheaper than N individual calls for batch triage.

## Output

Returns a deduplicated compliance_gap_severity rating (HIGH/MEDIUM/LOW/CLEAN), a list of triggered compliance controls across requested frameworks, and an LLM-written remediation summary prose tailored to the specified sector. Deterministic control mappings with AI-generated narrative.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "items"
     ],
     "properties": {
      "items": {
       "type": "string",
       "description": "Comma-separated list of CVE IDs and/or actor names, max 25, e.g. CVE-2023-38802,CVE-2024-12345,SANDWORM,XENOTIME. Each token auto-detected as a CVE ID (matches CVE-\\d{4}-\\d+) or treated as an actor name otherwise. Required."
      },
      "framework": {
       "type": "string",
       "description": "Optional filter to one compliance framework. Valid values: nerc_cip, iec_62443_2_1, iec_62443_2_4, iec_62443_3_2, iec_62443_3_3, iec_62443_4_2, nist_800_82, nist_csf, cisa_cpg, nca_otcc, uae_nesa_ia. Omit (or pass 'all') to return matches across every framework."
      },
      "entity_sector": {
       "type": "string",
       "description": "Optional: ENERGY, WATER, TRANSPORTATION, or GOVERNMENT. Informs the remediation summary's tone/priority framing only — does not filter which controls match."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ot-compliance-batch-gap-assessment-e4d1fa15/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ot-intel-api.onrender.com](https://www.zero.xyz/host/ot-intel-api.onrender.com/llms.txt)
