---
title: "CBOM Structural Lint & CNSA-2.0 Classifier"
method: POST
path: "/v1/tools/lint_cbom_structure"
tags: ["TODO_TAGS_REVIEW"]
---

# CBOM Structural Lint & CNSA-2.0 Classifier

`POST /v1/tools/lint_cbom_structure`

## Request

- Base URL: `https://ainumbers.co`
- URL: `https://ainumbers.co/v1/tools/lint_cbom_structure`
- Auth: none declared

Validates a pasted CycloneDX 1.6 Cryptography Bill of Materials against a hand-derived field subset (algorithm, key size, certification level, crypto functions) and classifies declared algorithm assets as quantum-vulnerable (RSA, ECDSA/ECDH, DH, SHA-1) or CNSA-2.0 target-aligned (ML-KEM-1024, ML-DSA-87, AES-256, SHA-384/512). Structural and classification checks only; every finding asserted from the pasted CBOM. Not a scanner, not discovery, not a cryptographic audit.

**Tool URL:** https://ainumbers.co/chaingraph/art-386-lint-cbom-structure.html
**AP2/Policy Mandate export:** yes

## Request body

- object
  - `cbom` unknown, required

## Response `200`

Successful tool execution result

- object
  - `cbom_structurally_valid` boolean
  - `cnsa2_ready_count` integer
  - `compliance_flags` string[]
  - `data_version` string
  - `findings` object[]
    - `classification` string
    - `index` integer
    - `matched_pattern` string, nullable
    - `name` string
    - `parameter_set_identifier` string
    - `primitive` string
    - `status` string
  - `structural_issues` unknown[]
    - unknown
  - `structurally_invalid_count` integer
  - `total_algorithm_assets` integer
  - `total_components` integer
  - `unclassified_count` integer
  - `verdict` string
  - `vulnerable_count` integer

---

[API](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite.md) · [All operations](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/llms.txt) · [OpenAPI document](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/revisions/b462e4f5bb28?raw)
