TID-CMM Threat-Informed Detection Capability Maturity Model
HomeDevelopersAPI

JSON endpoints

Versioned static JSON, served with permissive CORS so you can build against the model from anywhere. No key, no rate limit, no tracking.

To be precise about what this is: versioned data files on a CDN, not a service. Everything is GET. There is no endpoint that scores an assessment for you and there never will be — the assessment runs entirely in your browser and the point is that nothing you enter leaves it.

Endpoints

EndpointContents
/api/model.jsonThe complete model: 8 domains, 58 sub-capabilities, all 348 level descriptors, evidence criteria, weights, crosswalks and scoring rules.
/api/techniques.jsonATT&CK Enterprise v19.2 technique index (697 techniques) with tactics and platforms.
/api/levels.jsonThe 0–5 maturity scale with summaries and evidence bars.
/api/constraints.jsonScoring rules, maturity bands and the C1–C4 integrity constraints, in the order they are applied.
/api/tiers.jsonThe five maturity tiers with minimum scores and entry gates.
/api/profiles.jsonThe three applicability profiles, detection classes and environment archetypes.

Example

curl -s https://tid-cmm.com/api/model.json \
  | jq '.domains[] | {id, name, weight, subcaps: (.subcapabilities|length)}'

curl -s https://tid-cmm.com/api/model.json \
  | jq -r '.domains[].subcapabilities[] | [.id, .name] | @tsv'

Versioning

The payload always carries model.version. Breaking changes to the model shape bump the major version and are recorded in the changelog. ATT&CK content is pinned to a snapshot date; it is not silently updated underneath you.