All compliance findings. Each check has structured classification
metadata (id, jurisdictions, platforms, scope, primaryCategory,
categories) added inline. Combine bySeverity + byJurisdiction
etc. via the indexes field for filtered views.
O(1) lookup map keyed by stable id. Same data as checks[],
indexed for direct access (e.g. when resolving an annotation's
checkId to its parent check).
Pre-computed reference indexes — pure ID lists, no content duplication.
Tenants pick whichever organization fits their UI. Combine via set
intersection (e.g., critical EU findings = bySeverity.critical ∩
byJurisdiction.eu). All seven dimensions always present; empty buckets
are included so client code can do indexes.byJurisdiction.us ?? []
without optional-chaining on the bucket itself.
Present when the check was evaluated for specific regulated actors.
The regulated party a check is evaluating. Corpus rules tagged with an incompatible
actor are excluded from asserted citations and cannot drive blocking findings.
One record per financial-services specialist selected for this check, with how it
finished. Absent on checks that ran no specialist and on cached results produced
before this field existed.
Every rule that contributed to decision, in evaluation order. Present on checks
that ran a financial-services specialist.
Why the decision is what it is. blocking_check: a blocking finding forced BLOCK.
required_review_incomplete: a required specialist did not complete, so the check is
HOLD. legal_context_overflow: the applicable rule set exceeded what one run can
evaluate. flagged_check: a flagged finding produced HOLD.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ZebraTruth — Runtime Compliance for AI Agents","colors":{"primary":"#3FB2FE","light":"#3FB2FE","dark":"#3FB2FE"},"logo":{"light":"https://mintcdn.com/zebratruthai/gsHY39_GGp7teBef/logo/light.svg?fit=max\u0026auto=format\u0026n=gsHY39_GGp7teBef\u0026q=85\u0026s=a0210573e206e7c10145de436da1dab1","dark":"https://mintcdn.com/zebratruthai/gsHY39_GGp7teBef/logo/dark.svg?fit=max\u0026auto=format\u0026n=gsHY39_GGp7teBef\u0026q=85\u0026s=43489640c220a2f492f4d203e72392af"},"favicon":"https://mintcdn.com/zebratruthai/53nDj18I-jVMHwMl/favicon.png?fit=max\u0026auto=format\u0026n=53nDj18I-jVMHwMl\u0026q=85\u0026s=d17d051b30e8720f47448f94af058918","api":{"playground":{}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"zebratruthai","hasAudioNarration":false,"actualSubdomain":"zebratruthai","customDomains":["docs.zebratruth.ai"],"gitSource":{"type":"github","owner":"dafstar76","repo":"zebratruth-ai-labs","deployBranch":"master","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ab71fdcbc2c56bfa72d6aca","collectionId":"00df67d9-1f04-4b9c-8e32-28dcda9d3798","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ab71fdcbc2c56bfa72d6aca"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ab71fdcbc2c56bfa72d6aca","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":44},{"language":"default","tag":"Documentation","count":14},{"language":"default","tag":"Guides","count":9},{"language":"default","tag":"Text, Images \u0026 Integration","count":8},{"language":"default","tag":"Corpus","count":7},{"language":"default","tag":"Concepts","count":6},{"language":"default","tag":"Video","count":6},{"language":"default","tag":"Account \u0026 Usage","count":6},{"language":"default","tag":"Provenance","count":6},{"language":"default","tag":"Jobs \u0026 Reports","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/reports/get-compliance-report","slug":"/api-reference/reports/get-compliance-report","pageMetadata":{"title":"Get compliance report","description":"Retrieve a full compliance report by ID.","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /reports/{reportId}","href":"/api-reference/reports/get-compliance-report","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Retrieve a full compliance report by ID.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get compliance report","description":"Retrieve a full compliance report by ID.","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /reports/{reportId}","href":"/api-reference/reports/get-compliance-report","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"getReport","summary":"Get compliance report","description":"Retrieve a full compliance report by ID.","tags":["Reports"],"parameters":["fc3567d8-4e14-49c3-8246-99d75fcd32e6"],"responses":{"200":"fae8848a-ed8f-4d81-a419-4fbd75a89546","401":"6f730618-5bbf-41a5-9e34-26a70ef9e3bb","404":"2875af1b-0615-4b22-878a-6f78764069d7"},"method":"get","type":"path","servers":["e4860b08-abe2-46de-8ff2-cf13ac5f2eef"],"security":["2150c869-c80e-45b2-aa80-21ce646b4401"],"path":"/reports/{reportId}","baseUrlOptions":["https://api.zebratruth.ai/v1"],"title":"Get compliance report","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"fc3567d8-4e14-49c3-8246-99d75fcd32e6":{"name":"reportId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"responses":{"fae8848a-ed8f-4d81-a419-4fbd75a89546":{"description":"Full compliance report","content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","description":"Identifier of this check, usable with `GET /compliance/checks/{requestId}` and in request logs.","uniqueKey":"requestId","typeLabel":"string"},"reportId":{"type":"string","example":"rpt_abc123","uniqueKey":"reportId","typeLabel":"string"},"score":{"type":"integer","minimum":0,"maximum":100,"example":72,"uniqueKey":"score","typeLabel":"integer"},"decision":{"type":"string","enum":["PUBLISH","HOLD","BLOCK"],"description":"- `PUBLISH` — Score 80-100, safe to publish\n- `HOLD` — Score 60-79, or any high-severity flag\n- `BLOCK` — Score 0-59, or any critical-severity check\n","uniqueKey":"decision","typeLabel":"enum\u003cstring>"},"checks":{"type":"array","items":{"type":"object","description":"A single compliance finding. Includes both the raw finding fields\n(checkName, severity, message, recommendation, citation) and structured\nclassification metadata added by the engine (id, jurisdictions, platforms,\nscope, primaryCategory, categories).\n","properties":{"id":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"checks.items.[INDEX].id","typeLabel":"string"},"agentId":{"type":"string","enum":["ai-laws","jurisdiction-detection","advertising-law","platform-policy","metadata-labeling","rights-clearance","rights-clearance-text","rights-clearance-image","compliance-score","fs-compliance-financial-promotion","fs-compliance-advisory-suitability","fs-compliance-credit-servicing","fs-compliance-markets-trading","fs-compliance-financial-crime","fs-compliance-ai-governance","financial-services-compliance","pharma-healthcare-compliance"],"description":"Agent identifier. Use `GET /agents` to discover all available agents dynamically.\nThe list is filtered to the industries your workspace has selected.\n\n**Financial services.** The six `fs-compliance-*` agents correspond one-to-one to the\nreview scopes (`financial_promotion` → `fs-compliance-financial-promotion`, and so on).\nIn a full check they are selected with `reviewScopes`. Via `POST /agents/{agentId}`\nonly `fs-compliance-financial-promotion` can be invoked directly today; the other five\nreturn 400 `review_scope_not_enabled` on direct invocation and must run through\n`POST /compliance/check`. `financial-services-compliance` is a read-only alias of\n`fs-compliance-financial-promotion` accepted for older clients.\n\n**Pharma and healthcare.** `pharma-healthcare-compliance` runs for workspaces on the\n`pharma_healthcare` industry and honours `regulatedActor`.\n\n`ai-laws` is the canonical id; `jurisdiction-detection` is accepted as an\ninput alias for backward compatibility with historical clients. New\nintegrations should use `ai-laws`.\n\n**Note on rights-clearance variants.** `GET /agents` exposes two registered agents\nfor rights clearance: `rights-clearance-text` and `rights-clearance-image` — invoke\nthem via `POST /agents/{agentId}` using those qualified IDs. On **check response\nobjects**, however, text rights-clearance findings carry the bare `agentId:\n\"rights-clearance\"`. Treat bare `rights-clearance` and `rights-clearance-text` as\nthe same logical pipeline — the bare form is the value that appears on `checks[]`\nentries from that agent.\n","uniqueKey":"checks.items.[INDEX].agentId","typeLabel":"enum\u003cstring>"},"checkName":{"type":"string","description":"Human-readable check name","example":"Unsubstantiated Health Claim - 'Cure Cancer'","uniqueKey":"checks.items.[INDEX].checkName","typeLabel":"string"},"status":{"type":"string","enum":["pass","flag","block","escalate"],"description":"- `pass` — No issue found\n- `flag` — Issue found, review recommended\n- `block` — Critical issue, must fix\n- `escalate` — Needs human review\n","uniqueKey":"checks.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"severity":{"type":"string","enum":["critical","high","medium","low","info"],"description":"- `critical` — Legal liability risk (-25 points)\n- `high` — Likely violation (-15 points)\n- `medium` — Potential issue (-8 points)\n- `low` — Minor concern (-3 points)\n- `info` — Informational only (0 points)\n","uniqueKey":"checks.items.[INDEX].severity","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable description of the issue","example":"'Guaranteed to cure cancer' is an unsubstantiated health claim under FTC and EU UCPD.","uniqueKey":"checks.items.[INDEX].message","typeLabel":"string"},"recommendation":{"type":"string","description":"Specific action to fix the issue","example":"Remove the guarantee or substantiate with peer-reviewed clinical evidence.","uniqueKey":"checks.items.[INDEX].recommendation","typeLabel":"string"},"citation":{"type":"string","description":"Legal or policy reference","example":"FTC Endorsement Guides, 16 CFR Part 255","uniqueKey":"checks.items.[INDEX].citation","typeLabel":"string"},"metadata":{"type":"string","description":"Optional JSON string with agent-specific data","uniqueKey":"checks.items.[INDEX].metadata","typeLabel":"string"},"jurisdictions":{"type":"array","items":{"type":"string","uniqueKey":"checks.items.[INDEX].jurisdictions.items.[INDEX]","typeLabel":"string"},"description":"Canonical jurisdiction codes (us, eu, uk, india, china) this check\napplies to. May be empty when `scope` is `global` or `platform-specific`.\nAlways a subset of the request's jurisdiction list.\n","example":["us","eu"],"uniqueKey":"checks.items.[INDEX].jurisdictions","typeLabel":"string[]"},"platforms":{"type":"array","items":{"type":"string","uniqueKey":"checks.items.[INDEX].platforms.items.[INDEX]","typeLabel":"string"},"description":"Canonical platform codes (youtube, instagram, facebook, tiktok, linkedin)\nthis check applies to. May be empty when `scope` is `global` or\n`jurisdiction-specific`. Always a subset of the request's platform list.\n","example":["youtube","instagram"],"uniqueKey":"checks.items.[INDEX].platforms","typeLabel":"string[]"},"scope":{"type":"string","enum":["global","jurisdiction-specific","platform-specific","cross-cutting"],"description":"Disambiguates the empty-array case for `jurisdictions` and `platforms`:\n- `global` — universal; both arrays empty\n- `jurisdiction-specific` — jurisdictions populated, platforms empty\n- `platform-specific` — platforms populated, jurisdictions empty\n- `cross-cutting` — both populated; check applies at the intersection\n","uniqueKey":"checks.items.[INDEX].scope","typeLabel":"enum\u003cstring>"},"primaryCategory":{"type":"string","enum":["celebrity-endorsement","expert-authority","fabricated-testimonial","material-connection-disclosure","unsubstantiated-health-claim","medical-efficacy-claim","safety-claim","performance-claim","comparative-advertising","right-of-publicity","trademark-infringement","copyright-infringement","music-licensing","ai-disclosure-missing","watermark-missing","c2pa-missing","deepfake-impersonation","disguised-advertising","sponsored-content-labeling","consumer-information-disclosure","scarcity-urgency","aggressive-practice","algorithmic-amplification","minor-targeting","vulnerable-audience","platform-policy-violation","data-privacy","jurisdiction-coverage-gap","other"],"description":"Top-level breach taxonomy. New categories may be added in minor versions\n(additive only); renaming and removal are forbidden. Clients MUST accept\nunknown enum values gracefully (forward-compat). `other` is the fallback\nbucket for findings that don't fit any specific category.\n","uniqueKey":"checks.items.[INDEX].primaryCategory","typeLabel":"enum\u003cstring>"},"categories":{"type":"array","minItems":1,"items":{"type":"string","enum":["celebrity-endorsement","expert-authority","fabricated-testimonial","material-connection-disclosure","unsubstantiated-health-claim","medical-efficacy-claim","safety-claim","performance-claim","comparative-advertising","right-of-publicity","trademark-infringement","copyright-infringement","music-licensing","ai-disclosure-missing","watermark-missing","c2pa-missing","deepfake-impersonation","disguised-advertising","sponsored-content-labeling","consumer-information-disclosure","scarcity-urgency","aggressive-practice","algorithmic-amplification","minor-targeting","vulnerable-audience","platform-policy-violation","data-privacy","jurisdiction-coverage-gap","other"],"description":"Top-level breach taxonomy. New categories may be added in minor versions\n(additive only); renaming and removal are forbidden. Clients MUST accept\nunknown enum values gracefully (forward-compat). `other` is the fallback\nbucket for findings that don't fit any specific category.\n","uniqueKey":"checks.items.[INDEX].categories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"All matched categories, with `primaryCategory` first. A finding may\napply to multiple categories (e.g. a deepfake celebrity check matches\nboth `deepfake-impersonation` and `right-of-publicity`).\n","example":["unsubstantiated-health-claim","performance-claim"],"uniqueKey":"checks.items.[INDEX].categories","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"checks.items.[INDEX]","typeLabel":"object"},"description":"All compliance findings. Each check has structured classification\nmetadata (id, jurisdictions, platforms, scope, primaryCategory,\ncategories) added inline. Combine `bySeverity` + `byJurisdiction`\netc. via the `indexes` field for filtered views.\n","uniqueKey":"checks","typeLabel":"object[]"},"checksById":{"type":"object","additionalProperties":{"type":"object","description":"A single compliance finding. Includes both the raw finding fields\n(checkName, severity, message, recommendation, citation) and structured\nclassification metadata added by the engine (id, jurisdictions, platforms,\nscope, primaryCategory, categories).\n","properties":{"id":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"checksById.additionalProperties.id","typeLabel":"string"},"agentId":{"type":"string","enum":["ai-laws","jurisdiction-detection","advertising-law","platform-policy","metadata-labeling","rights-clearance","rights-clearance-text","rights-clearance-image","compliance-score","fs-compliance-financial-promotion","fs-compliance-advisory-suitability","fs-compliance-credit-servicing","fs-compliance-markets-trading","fs-compliance-financial-crime","fs-compliance-ai-governance","financial-services-compliance","pharma-healthcare-compliance"],"description":"Agent identifier. Use `GET /agents` to discover all available agents dynamically.\nThe list is filtered to the industries your workspace has selected.\n\n**Financial services.** The six `fs-compliance-*` agents correspond one-to-one to the\nreview scopes (`financial_promotion` → `fs-compliance-financial-promotion`, and so on).\nIn a full check they are selected with `reviewScopes`. Via `POST /agents/{agentId}`\nonly `fs-compliance-financial-promotion` can be invoked directly today; the other five\nreturn 400 `review_scope_not_enabled` on direct invocation and must run through\n`POST /compliance/check`. `financial-services-compliance` is a read-only alias of\n`fs-compliance-financial-promotion` accepted for older clients.\n\n**Pharma and healthcare.** `pharma-healthcare-compliance` runs for workspaces on the\n`pharma_healthcare` industry and honours `regulatedActor`.\n\n`ai-laws` is the canonical id; `jurisdiction-detection` is accepted as an\ninput alias for backward compatibility with historical clients. New\nintegrations should use `ai-laws`.\n\n**Note on rights-clearance variants.** `GET /agents` exposes two registered agents\nfor rights clearance: `rights-clearance-text` and `rights-clearance-image` — invoke\nthem via `POST /agents/{agentId}` using those qualified IDs. On **check response\nobjects**, however, text rights-clearance findings carry the bare `agentId:\n\"rights-clearance\"`. Treat bare `rights-clearance` and `rights-clearance-text` as\nthe same logical pipeline — the bare form is the value that appears on `checks[]`\nentries from that agent.\n","uniqueKey":"checksById.additionalProperties.agentId","typeLabel":"enum\u003cstring>"},"checkName":{"type":"string","description":"Human-readable check name","example":"Unsubstantiated Health Claim - 'Cure Cancer'","uniqueKey":"checksById.additionalProperties.checkName","typeLabel":"string"},"status":{"type":"string","enum":["pass","flag","block","escalate"],"description":"- `pass` — No issue found\n- `flag` — Issue found, review recommended\n- `block` — Critical issue, must fix\n- `escalate` — Needs human review\n","uniqueKey":"checksById.additionalProperties.status","typeLabel":"enum\u003cstring>"},"severity":{"type":"string","enum":["critical","high","medium","low","info"],"description":"- `critical` — Legal liability risk (-25 points)\n- `high` — Likely violation (-15 points)\n- `medium` — Potential issue (-8 points)\n- `low` — Minor concern (-3 points)\n- `info` — Informational only (0 points)\n","uniqueKey":"checksById.additionalProperties.severity","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable description of the issue","example":"'Guaranteed to cure cancer' is an unsubstantiated health claim under FTC and EU UCPD.","uniqueKey":"checksById.additionalProperties.message","typeLabel":"string"},"recommendation":{"type":"string","description":"Specific action to fix the issue","example":"Remove the guarantee or substantiate with peer-reviewed clinical evidence.","uniqueKey":"checksById.additionalProperties.recommendation","typeLabel":"string"},"citation":{"type":"string","description":"Legal or policy reference","example":"FTC Endorsement Guides, 16 CFR Part 255","uniqueKey":"checksById.additionalProperties.citation","typeLabel":"string"},"metadata":{"type":"string","description":"Optional JSON string with agent-specific data","uniqueKey":"checksById.additionalProperties.metadata","typeLabel":"string"},"jurisdictions":{"type":"array","items":{"type":"string","uniqueKey":"checksById.additionalProperties.jurisdictions.items.[INDEX]","typeLabel":"string"},"description":"Canonical jurisdiction codes (us, eu, uk, india, china) this check\napplies to. May be empty when `scope` is `global` or `platform-specific`.\nAlways a subset of the request's jurisdiction list.\n","example":["us","eu"],"uniqueKey":"checksById.additionalProperties.jurisdictions","typeLabel":"string[]"},"platforms":{"type":"array","items":{"type":"string","uniqueKey":"checksById.additionalProperties.platforms.items.[INDEX]","typeLabel":"string"},"description":"Canonical platform codes (youtube, instagram, facebook, tiktok, linkedin)\nthis check applies to. May be empty when `scope` is `global` or\n`jurisdiction-specific`. Always a subset of the request's platform list.\n","example":["youtube","instagram"],"uniqueKey":"checksById.additionalProperties.platforms","typeLabel":"string[]"},"scope":{"type":"string","enum":["global","jurisdiction-specific","platform-specific","cross-cutting"],"description":"Disambiguates the empty-array case for `jurisdictions` and `platforms`:\n- `global` — universal; both arrays empty\n- `jurisdiction-specific` — jurisdictions populated, platforms empty\n- `platform-specific` — platforms populated, jurisdictions empty\n- `cross-cutting` — both populated; check applies at the intersection\n","uniqueKey":"checksById.additionalProperties.scope","typeLabel":"enum\u003cstring>"},"primaryCategory":{"type":"string","enum":["celebrity-endorsement","expert-authority","fabricated-testimonial","material-connection-disclosure","unsubstantiated-health-claim","medical-efficacy-claim","safety-claim","performance-claim","comparative-advertising","right-of-publicity","trademark-infringement","copyright-infringement","music-licensing","ai-disclosure-missing","watermark-missing","c2pa-missing","deepfake-impersonation","disguised-advertising","sponsored-content-labeling","consumer-information-disclosure","scarcity-urgency","aggressive-practice","algorithmic-amplification","minor-targeting","vulnerable-audience","platform-policy-violation","data-privacy","jurisdiction-coverage-gap","other"],"description":"Top-level breach taxonomy. New categories may be added in minor versions\n(additive only); renaming and removal are forbidden. Clients MUST accept\nunknown enum values gracefully (forward-compat). `other` is the fallback\nbucket for findings that don't fit any specific category.\n","uniqueKey":"checksById.additionalProperties.primaryCategory","typeLabel":"enum\u003cstring>"},"categories":{"type":"array","minItems":1,"items":{"type":"string","enum":["celebrity-endorsement","expert-authority","fabricated-testimonial","material-connection-disclosure","unsubstantiated-health-claim","medical-efficacy-claim","safety-claim","performance-claim","comparative-advertising","right-of-publicity","trademark-infringement","copyright-infringement","music-licensing","ai-disclosure-missing","watermark-missing","c2pa-missing","deepfake-impersonation","disguised-advertising","sponsored-content-labeling","consumer-information-disclosure","scarcity-urgency","aggressive-practice","algorithmic-amplification","minor-targeting","vulnerable-audience","platform-policy-violation","data-privacy","jurisdiction-coverage-gap","other"],"description":"Top-level breach taxonomy. New categories may be added in minor versions\n(additive only); renaming and removal are forbidden. Clients MUST accept\nunknown enum values gracefully (forward-compat). `other` is the fallback\nbucket for findings that don't fit any specific category.\n","uniqueKey":"checksById.additionalProperties.categories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"All matched categories, with `primaryCategory` first. A finding may\napply to multiple categories (e.g. a deepfake celebrity check matches\nboth `deepfake-impersonation` and `right-of-publicity`).\n","example":["unsubstantiated-health-claim","performance-claim"],"uniqueKey":"checksById.additionalProperties.categories","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"checksById.additionalProperties","typeLabel":"object"},"description":"O(1) lookup map keyed by stable `id`. Same data as `checks[]`,\nindexed for direct access (e.g. when resolving an annotation's\n`checkId` to its parent check).\n","uniqueKey":"checksById","typeLabel":"object"},"indexes":{"type":"object","description":"Pre-computed reference indexes — pure ID lists, no content duplication.\nTenants pick whichever organization fits their UI. Combine via set\nintersection (e.g., critical EU findings = bySeverity.critical ∩\nbyJurisdiction.eu). All seven dimensions always present; empty buckets\nare included so client code can do `indexes.byJurisdiction.us ?? []`\nwithout optional-chaining on the bucket itself.\n","properties":{"byJurisdiction":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byJurisdiction.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byJurisdiction.additionalProperties","typeLabel":"string[]"},"description":"Keyed by jurisdiction code (us, eu, uk, india, china).","uniqueKey":"indexes.byJurisdiction","typeLabel":"object"},"byPlatform":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byPlatform.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byPlatform.additionalProperties","typeLabel":"string[]"},"description":"Keyed by platform code (youtube, instagram, facebook, tiktok, linkedin).","uniqueKey":"indexes.byPlatform","typeLabel":"object"},"bySeverity":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.bySeverity.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.bySeverity.additionalProperties","typeLabel":"string[]"},"description":"Keyed by severity (info, low, medium, high, critical).","uniqueKey":"indexes.bySeverity","typeLabel":"object"},"byStatus":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byStatus.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byStatus.additionalProperties","typeLabel":"string[]"},"description":"Keyed by status (pass, flag, block, escalate).","uniqueKey":"indexes.byStatus","typeLabel":"object"},"byCategory":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byCategory.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byCategory.additionalProperties","typeLabel":"string[]"},"description":"Keyed by `primaryCategory` only — each check appears in exactly one bucket.","uniqueKey":"indexes.byCategory","typeLabel":"object"},"byCategoryAll":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byCategoryAll.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byCategoryAll.additionalProperties","typeLabel":"string[]"},"description":"Keyed by every category in `categories[]` — a check may appear in multiple buckets.","uniqueKey":"indexes.byCategoryAll","typeLabel":"object"},"byAgent":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"indexes.byAgent.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"indexes.byAgent.additionalProperties","typeLabel":"string[]"},"description":"Keyed by agentId.","uniqueKey":"indexes.byAgent","typeLabel":"object"}},"uniqueKey":"indexes","typeLabel":"object"},"annotations":{"type":"array","items":{"type":"object","required":["type","agentId","severity","message"],"properties":{"type":{"type":"string","enum":["text-span","timeline","image-region","global"],"isRequired":true,"uniqueKey":"annotations.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"agentId":{"type":"string","enum":["ai-laws","jurisdiction-detection","advertising-law","platform-policy","metadata-labeling","rights-clearance","rights-clearance-text","rights-clearance-image","compliance-score","fs-compliance-financial-promotion","fs-compliance-advisory-suitability","fs-compliance-credit-servicing","fs-compliance-markets-trading","fs-compliance-financial-crime","fs-compliance-ai-governance","financial-services-compliance","pharma-healthcare-compliance"],"description":"Agent identifier. Use `GET /agents` to discover all available agents dynamically.\nThe list is filtered to the industries your workspace has selected.\n\n**Financial services.** The six `fs-compliance-*` agents correspond one-to-one to the\nreview scopes (`financial_promotion` → `fs-compliance-financial-promotion`, and so on).\nIn a full check they are selected with `reviewScopes`. Via `POST /agents/{agentId}`\nonly `fs-compliance-financial-promotion` can be invoked directly today; the other five\nreturn 400 `review_scope_not_enabled` on direct invocation and must run through\n`POST /compliance/check`. `financial-services-compliance` is a read-only alias of\n`fs-compliance-financial-promotion` accepted for older clients.\n\n**Pharma and healthcare.** `pharma-healthcare-compliance` runs for workspaces on the\n`pharma_healthcare` industry and honours `regulatedActor`.\n\n`ai-laws` is the canonical id; `jurisdiction-detection` is accepted as an\ninput alias for backward compatibility with historical clients. New\nintegrations should use `ai-laws`.\n\n**Note on rights-clearance variants.** `GET /agents` exposes two registered agents\nfor rights clearance: `rights-clearance-text` and `rights-clearance-image` — invoke\nthem via `POST /agents/{agentId}` using those qualified IDs. On **check response\nobjects**, however, text rights-clearance findings carry the bare `agentId:\n\"rights-clearance\"`. Treat bare `rights-clearance` and `rights-clearance-text` as\nthe same logical pipeline — the bare form is the value that appears on `checks[]`\nentries from that agent.\n","isRequired":true,"uniqueKey":"annotations.items.[INDEX].agentId","typeLabel":"enum\u003cstring>"},"severity":{"type":"string","enum":["critical","high","medium","low","info"],"description":"- `critical` — Legal liability risk (-25 points)\n- `high` — Likely violation (-15 points)\n- `medium` — Potential issue (-8 points)\n- `low` — Minor concern (-3 points)\n- `info` — Informational only (0 points)\n","isRequired":true,"uniqueKey":"annotations.items.[INDEX].severity","typeLabel":"enum\u003cstring>"},"message":{"type":"string","example":"'Guaranteed results' may violate FTC endorsement guides","isRequired":true,"uniqueKey":"annotations.items.[INDEX].message","typeLabel":"string"},"checkRef":{"type":"string","description":"DEPRECATED. Legacy link to `ComplianceCheck.checkName`. Use `checkId`\ninstead — it's a stable hash that survives prompt wording changes.\nRetained for backward compatibility; will be removed in a future\nmajor version.\n","uniqueKey":"annotations.items.[INDEX].checkRef","typeLabel":"string"},"checkId":{"type":"string","pattern":"^chk_[0-9a-f]{8}$","description":"Stable check identifier. Format: `chk_\u003c8 lowercase hex>`. Generated as a\nSHA-256 hash of (agentId, checkName, citation, sorted jurisdictions,\nsorted platforms, primaryCategory) — stable across reruns of identical\ncontent + scope + engine version. NOT stable across taxonomy\nreclassifications (primaryCategory change) or content/scope changes.\n","example":"chk_a1b2c3d4","uniqueKey":"annotations.items.[INDEX].checkId","typeLabel":"string"},"suggestion":{"type":"string","description":"Actionable fix","example":"Consider 'may help' instead of 'guaranteed'","uniqueKey":"annotations.items.[INDEX].suggestion","typeLabel":"string"},"textLocation":{"type":"object","description":"For text-span annotations","properties":{"start":{"type":"integer","description":"Character offset (0-indexed)","example":120,"uniqueKey":"annotations.items.[INDEX].textLocation.start","typeLabel":"integer"},"end":{"type":"integer","example":138,"uniqueKey":"annotations.items.[INDEX].textLocation.end","typeLabel":"integer"},"matchedText":{"type":"string","example":"guaranteed results","uniqueKey":"annotations.items.[INDEX].textLocation.matchedText","typeLabel":"string"}},"uniqueKey":"annotations.items.[INDEX].textLocation","typeLabel":"object"},"timelineLocation":{"type":"object","description":"For timeline annotations (video)","properties":{"startMs":{"type":"integer","example":15000,"uniqueKey":"annotations.items.[INDEX].timelineLocation.startMs","typeLabel":"integer"},"endMs":{"type":"integer","example":28000,"uniqueKey":"annotations.items.[INDEX].timelineLocation.endMs","typeLabel":"integer"},"track":{"type":"string","enum":["audio","video","subtitle"],"uniqueKey":"annotations.items.[INDEX].timelineLocation.track","typeLabel":"enum\u003cstring>"}},"uniqueKey":"annotations.items.[INDEX].timelineLocation","typeLabel":"object"},"imageLocation":{"type":"object","description":"For image-region annotations","properties":{"imageUrl":{"type":"string","format":"uri","uniqueKey":"annotations.items.[INDEX].imageLocation.imageUrl","typeLabel":"string\u003curi>"},"boundingBox":{"type":"object","properties":{"x":{"type":"number","uniqueKey":"annotations.items.[INDEX].imageLocation.boundingBox.x","typeLabel":"number"},"y":{"type":"number","uniqueKey":"annotations.items.[INDEX].imageLocation.boundingBox.y","typeLabel":"number"},"width":{"type":"number","uniqueKey":"annotations.items.[INDEX].imageLocation.boundingBox.width","typeLabel":"number"},"height":{"type":"number","uniqueKey":"annotations.items.[INDEX].imageLocation.boundingBox.height","typeLabel":"number"}},"uniqueKey":"annotations.items.[INDEX].imageLocation.boundingBox","typeLabel":"object"}},"uniqueKey":"annotations.items.[INDEX].imageLocation","typeLabel":"object"}},"uniqueKey":"annotations.items.[INDEX]","typeLabel":"object"},"uniqueKey":"annotations","typeLabel":"object[]"},"profile":{"type":"object","properties":{"detectedJurisdictions":{"type":"array","items":{"type":"string","uniqueKey":"profile.detectedJurisdictions.items.[INDEX]","typeLabel":"string"},"uniqueKey":"profile.detectedJurisdictions","typeLabel":"string[]"},"applicableRules":{"type":"array","items":{"type":"object","uniqueKey":"profile.applicableRules.items.[INDEX]","typeLabel":"object"},"uniqueKey":"profile.applicableRules","typeLabel":"object[]"},"targetPlatforms":{"type":"array","items":{"type":"string","uniqueKey":"profile.targetPlatforms.items.[INDEX]","typeLabel":"string"},"uniqueKey":"profile.targetPlatforms","typeLabel":"string[]"},"confidence":{"type":"number","minimum":0,"maximum":1,"uniqueKey":"profile.confidence","typeLabel":"number"},"reasoning":{"type":"string","uniqueKey":"profile.reasoning","typeLabel":"string"}},"uniqueKey":"profile","typeLabel":"object"},"agentSummaries":{"type":"object","additionalProperties":{"type":"object","properties":{"status":{"type":"string","enum":["pass","flag","block","escalate"],"description":"- `pass` — No issue found\n- `flag` — Issue found, review recommended\n- `block` — Critical issue, must fix\n- `escalate` — Needs human review\n","uniqueKey":"agentSummaries.additionalProperties.status","typeLabel":"enum\u003cstring>"},"checkCount":{"type":"integer","uniqueKey":"agentSummaries.additionalProperties.checkCount","typeLabel":"integer"},"passCount":{"type":"integer","uniqueKey":"agentSummaries.additionalProperties.passCount","typeLabel":"integer"},"flagCount":{"type":"integer","uniqueKey":"agentSummaries.additionalProperties.flagCount","typeLabel":"integer"},"blockCount":{"type":"integer","uniqueKey":"agentSummaries.additionalProperties.blockCount","typeLabel":"integer"},"summary":{"type":"string","example":"2 advertising claim issues found","uniqueKey":"agentSummaries.additionalProperties.summary","typeLabel":"string"}},"uniqueKey":"agentSummaries.additionalProperties","typeLabel":"object"},"uniqueKey":"agentSummaries","typeLabel":"object"},"versionInfo":{"type":"object","properties":{"engineVersion":{"type":"string","example":"1.3.2","uniqueKey":"versionInfo.engineVersion","typeLabel":"string"},"rulesVersion":{"type":"string","description":"Timestamp of last rules update. Bumps when the compiled law set changes.","example":"2026-04-01","uniqueKey":"versionInfo.rulesVersion","typeLabel":"string"},"agentVersions":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"versionInfo.agentVersions.additionalProperties","typeLabel":"string"},"description":"Version per compliance agent. Bumps when an agent's logic changes.","example":{"advertising-law":"1.1.0","ai-laws":"1.3.0"},"uniqueKey":"versionInfo.agentVersions","typeLabel":"object"},"stackVersion":{"type":"string","description":"Opaque identifier for the internal model/prompt stack. Bumps whenever the\nunderlying model pipeline changes. Use it for client-side change detection\n(e.g. invalidate cached results, trigger replays). The format is intentionally\nopaque — treat it as a black-box string and pattern-match only for equality,\nnever parse its structure.\n","example":"2026.04-a7f3","uniqueKey":"versionInfo.stackVersion","typeLabel":"string"}},"uniqueKey":"versionInfo","typeLabel":"object"},"costBreakdown":{"type":"object","properties":{"totalCredits":{"type":"number","uniqueKey":"costBreakdown.totalCredits","typeLabel":"number"},"agents":{"type":"array","items":{"type":"object","properties":{"agent":{"type":"string","example":"jurisdiction","uniqueKey":"costBreakdown.agents.items.[INDEX].agent","typeLabel":"string"},"stage":{"type":"string","enum":["A","B","C"],"description":"Pipeline stage — the agent's work is decomposed into three sub-steps:\n- **A** — Legal research (retrieves applicable law; cacheable with a 30-day TTL)\n- **B** — Risk interpretation (maps law to content-specific risk)\n- **C** — Compliance composition (writes structured output)\n","uniqueKey":"costBreakdown.agents.items.[INDEX].stage","typeLabel":"enum\u003cstring>"},"credits":{"type":"number","uniqueKey":"costBreakdown.agents.items.[INDEX].credits","typeLabel":"number"},"cached":{"type":"boolean","description":"Whether the research cache was used","example":false,"uniqueKey":"costBreakdown.agents.items.[INDEX].cached","typeLabel":"boolean"}},"uniqueKey":"costBreakdown.agents.items.[INDEX]","typeLabel":"object"},"uniqueKey":"costBreakdown.agents","typeLabel":"object[]"}},"uniqueKey":"costBreakdown","typeLabel":"object"},"creditsCharged":{"type":"number","description":"Credits debited for this request. `0` on a cache hit.","uniqueKey":"creditsCharged","typeLabel":"number"},"cached":{"type":"boolean","description":"`true` when the result was served from the response cache or an idempotent replay.\n","uniqueKey":"cached","typeLabel":"boolean"},"coverageIncomplete":{"type":"boolean","description":"`true` when at least one agent could not consult its legal corpus. Always equals\n`coverageGaps.length > 0`.\n","uniqueKey":"coverageIncomplete","typeLabel":"boolean"},"coverageGaps":{"type":"array","items":{"type":"object","required":["agentId","reason"],"properties":{"agentId":{"type":"string","isRequired":true,"uniqueKey":"coverageGaps.items.[INDEX].agentId","typeLabel":"string"},"reason":{"type":"string","enum":["memory_disabled","lookup_unavailable","no_compatible_card","legacy_unclassified"],"description":"Why the agent could not consult its governed corpus for this check.","isRequired":true,"uniqueKey":"coverageGaps.items.[INDEX].reason","typeLabel":"enum\u003cstring>"}},"uniqueKey":"coverageGaps.items.[INDEX]","typeLabel":"object"},"uniqueKey":"coverageGaps","typeLabel":"object[]"},"analysisDiagnostics":{"type":"array","items":{"type":"object","description":"First-class pipeline diagnostic. Surfaces non-compliance signals like\nrenderer overflow or boundary-validation drops without polluting\nthe compliance findings array.\n","required":["code","message","severity"],"properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. `evidence_truncated`, `video_check_missing_evidence_ids`).","example":"evidence_truncated","isRequired":true,"uniqueKey":"analysisDiagnostics.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation.","isRequired":true,"uniqueKey":"analysisDiagnostics.items.[INDEX].message","typeLabel":"string"},"severity":{"type":"string","enum":["info","warning","error"],"isRequired":true,"uniqueKey":"analysisDiagnostics.items.[INDEX].severity","typeLabel":"enum\u003cstring>"},"evidenceIds":{"type":"array","items":{"type":"string","uniqueKey":"analysisDiagnostics.items.[INDEX].evidenceIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"analysisDiagnostics.items.[INDEX].evidenceIds","typeLabel":"string[]"}},"uniqueKey":"analysisDiagnostics.items.[INDEX]","typeLabel":"object"},"description":"Pipeline diagnostics that are not compliance findings.","uniqueKey":"analysisDiagnostics","typeLabel":"object[]"},"regulatedActors":{"type":"array","items":{"type":"string","enum":["advertiser","manufacturer","platform","provider","payer","pharmacy","HCP","telehealth_provider","adviser","broker_dealer","bank","lender","servicer","debt_collector","fund_manager","payment_service_provider","insurer"],"description":"The regulated party a check is evaluating. Corpus rules tagged with an incompatible\nactor are excluded from asserted citations and cannot drive blocking findings.\n","uniqueKey":"regulatedActors.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Present when the check was evaluated for specific regulated actors.","uniqueKey":"regulatedActors","typeLabel":"enum\u003cstring>[]"},"agentsRun":{"type":"array","items":{"type":"object","required":["id","outcome"],"properties":{"id":{"type":"string","enum":["ai-laws","jurisdiction-detection","advertising-law","platform-policy","metadata-labeling","rights-clearance","rights-clearance-text","rights-clearance-image","compliance-score","fs-compliance-financial-promotion","fs-compliance-advisory-suitability","fs-compliance-credit-servicing","fs-compliance-markets-trading","fs-compliance-financial-crime","fs-compliance-ai-governance","financial-services-compliance","pharma-healthcare-compliance"],"description":"Agent identifier. Use `GET /agents` to discover all available agents dynamically.\nThe list is filtered to the industries your workspace has selected.\n\n**Financial services.** The six `fs-compliance-*` agents correspond one-to-one to the\nreview scopes (`financial_promotion` → `fs-compliance-financial-promotion`, and so on).\nIn a full check they are selected with `reviewScopes`. Via `POST /agents/{agentId}`\nonly `fs-compliance-financial-promotion` can be invoked directly today; the other five\nreturn 400 `review_scope_not_enabled` on direct invocation and must run through\n`POST /compliance/check`. `financial-services-compliance` is a read-only alias of\n`fs-compliance-financial-promotion` accepted for older clients.\n\n**Pharma and healthcare.** `pharma-healthcare-compliance` runs for workspaces on the\n`pharma_healthcare` industry and honours `regulatedActor`.\n\n`ai-laws` is the canonical id; `jurisdiction-detection` is accepted as an\ninput alias for backward compatibility with historical clients. New\nintegrations should use `ai-laws`.\n\n**Note on rights-clearance variants.** `GET /agents` exposes two registered agents\nfor rights clearance: `rights-clearance-text` and `rights-clearance-image` — invoke\nthem via `POST /agents/{agentId}` using those qualified IDs. On **check response\nobjects**, however, text rights-clearance findings carry the bare `agentId:\n\"rights-clearance\"`. Treat bare `rights-clearance` and `rights-clearance-text` as\nthe same logical pipeline — the bare form is the value that appears on `checks[]`\nentries from that agent.\n","isRequired":true,"uniqueKey":"agentsRun.items.[INDEX].id","typeLabel":"enum\u003cstring>"},"outcome":{"type":"string","enum":["completed","completed_no_findings","not_applicable","failed_required","failed_optional","insufficient_evidence"],"description":"How a specialist agent finished. `completed` and `completed_no_findings` are charged;\nthe other four release the agent's reservation.\n","isRequired":true,"uniqueKey":"agentsRun.items.[INDEX].outcome","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","enum":["timeout","agent_error","invalid_model_output","legal_context_unavailable","legal_context_overflow","fs_agent_not_available"],"description":"Present when `outcome` is a failure. `legal_context_unavailable` means the scope's corpus is not yet served.","uniqueKey":"agentsRun.items.[INDEX].reason","typeLabel":"enum\u003cstring>"}},"uniqueKey":"agentsRun.items.[INDEX]","typeLabel":"object"},"description":"One record per financial-services specialist selected for this check, with how it\nfinished. Absent on checks that ran no specialist and on cached results produced\nbefore this field existed.\n","uniqueKey":"agentsRun","typeLabel":"object[]"},"decisionReasons":{"type":"array","items":{"type":"string","enum":["blocking_check","required_review_incomplete","legal_context_overflow","flagged_check"],"description":"Why the decision is what it is. `blocking_check`: a blocking finding forced BLOCK.\n`required_review_incomplete`: a required specialist did not complete, so the check is\nHOLD. `legal_context_overflow`: the applicable rule set exceeded what one run can\nevaluate. `flagged_check`: a flagged finding produced HOLD.\n","uniqueKey":"decisionReasons.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Every rule that contributed to `decision`, in evaluation order. Present on checks\nthat ran a financial-services specialist.\n","uniqueKey":"decisionReasons","typeLabel":"enum\u003cstring>[]"},"_meta":{"type":"object","description":"Present only for test mode (zt_test_ keys)","properties":{"mode":{"type":"string","enum":["test"],"uniqueKey":"_meta.mode","typeLabel":"enum\u003cstring>"},"sandbox":{"type":"boolean","uniqueKey":"_meta.sandbox","typeLabel":"boolean"},"creditsCharged":{"type":"number","uniqueKey":"_meta.creditsCharged","typeLabel":"number"},"estimatedProductionCost":{"type":"number","uniqueKey":"_meta.estimatedProductionCost","typeLabel":"number"},"scenarioId":{"type":"string","example":"claim-violation","uniqueKey":"_meta.scenarioId","typeLabel":"string"}},"uniqueKey":"_meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"requestId":"\u003cstring>","reportId":"rpt_abc123","score":72,"decision":"PUBLISH","checks":[{"id":"chk_a1b2c3d4","agentId":"ai-laws","checkName":"Unsubstantiated Health Claim - 'Cure Cancer'","status":"pass","severity":"critical","message":"'Guaranteed to cure cancer' is an unsubstantiated health claim under FTC and EU UCPD.","recommendation":"Remove the guarantee or substantiate with peer-reviewed clinical evidence.","citation":"FTC Endorsement Guides, 16 CFR Part 255","metadata":"\u003cstring>","jurisdictions":["us","eu"],"platforms":["youtube","instagram"],"scope":"global","primaryCategory":"celebrity-endorsement","categories":["unsubstantiated-health-claim","performance-claim"]}],"checksById":{},"indexes":{"byJurisdiction":{},"byPlatform":{},"bySeverity":{},"byStatus":{},"byCategory":{},"byCategoryAll":{},"byAgent":{}},"annotations":[{"type":"text-span","agentId":"ai-laws","severity":"critical","message":"'Guaranteed results' may violate FTC endorsement guides","checkRef":"\u003cstring>","checkId":"chk_a1b2c3d4","suggestion":"Consider 'may help' instead of 'guaranteed'","textLocation":{"start":120,"end":138,"matchedText":"guaranteed results"},"timelineLocation":{"startMs":15000,"endMs":28000,"track":"audio"},"imageLocation":{"imageUrl":"\u003cstring>","boundingBox":{"x":123,"y":123,"width":123,"height":123}}}],"profile":{"detectedJurisdictions":["\u003cstring>"],"applicableRules":[{}],"targetPlatforms":["\u003cstring>"],"confidence":0.5,"reasoning":"\u003cstring>"},"agentSummaries":{},"versionInfo":{"engineVersion":"1.3.2","rulesVersion":"2026-04-01","agentVersions":{"advertising-law":"1.1.0","ai-laws":"1.3.0"},"stackVersion":"2026.04-a7f3"},"costBreakdown":{"totalCredits":123,"agents":[{"agent":"jurisdiction","stage":"A","credits":123,"cached":false}]},"creditsCharged":123,"cached":true,"coverageIncomplete":true,"coverageGaps":[{"agentId":"\u003cstring>","reason":"memory_disabled"}],"analysisDiagnostics":[{"code":"evidence_truncated","message":"\u003cstring>","severity":"info","evidenceIds":["\u003cstring>"]}],"regulatedActors":["advertiser"],"agentsRun":[{"id":"ai-laws","outcome":"completed","reason":"timeout"}],"decisionReasons":["blocking_check"],"_meta":{"mode":"test","sandbox":true,"creditsCharged":123,"estimatedProductionCost":123,"scenarioId":"claim-violation"}}}},"exampleType":"generated"}},"exampleType":"generated"},"6f730618-5bbf-41a5-9e34-26a70ef9e3bb":{"description":"Invalid, missing, or expired API key. Standard error envelope —\nread `message` for the human-readable reason.\n","content":{"application/json":{"schema":{"type":"object","description":"Standard error envelope.","required":["statusCode","message"],"properties":{"statusCode":{"type":"integer","example":401,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"message":{"type":"string","description":"Canonical human-readable reason — pattern-match on this field.","example":"Invalid API key","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"error":{"type":"boolean","example":true,"uniqueKey":"error","typeLabel":"boolean"},"url":{"type":"string","format":"uri","example":"https://api.zebratruth.ai/v1/whoami","uniqueKey":"url","typeLabel":"string\u003curi>"},"statusMessage":{"type":"string","example":"Invalid API key","uniqueKey":"statusMessage","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":401,"message":"Invalid API key","error":true,"url":"https://api.zebratruth.ai/v1/whoami","statusMessage":"Invalid API key"}}},"exampleType":"generated"}},"exampleType":"generated"},"2875af1b-0615-4b22-878a-6f78764069d7":{"description":"Report not found","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"2150c869-c80e-45b2-aa80-21ce646b4401":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key starting with `zt_live_` (production) or `zt_test_` (sandbox).\nGet your key at https://developers.zebratruth.ai\n","scopes":[]}}},"servers":{"e4860b08-abe2-46de-8ff2-cf13ac5f2eef":{"url":"https://api.zebratruth.ai/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"API key starting with `zt_live_` (production) or `zt_test_` (sandbox).\nGet your key at https://developers.zebratruth.ai\n","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"API key starting with `zt_live_` (production) or `zt_test_` (sandbox).\nGet your key at https://developers.zebratruth.ai\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi/zebratruth-v1.yaml"},"subdomain":"zebratruthai","siteName":"ZebraTruth — Runtime Compliance for AI Agents","title":"Get compliance report - ZebraTruth — Runtime Compliance for AI Agents","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-26T01:29:05.917Z","originalFileLocation":"api-reference/reports/get-compliance-report.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Retrieve a full compliance report by ID.\">\u003cmeta data-mint-head name=\"application-name\" content=\"ZebraTruth — Runtime Compliance for AI Agents\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get compliance report - ZebraTruth — Runtime Compliance for AI Agents\">\u003cmeta data-mint-head property=\"og:description\" content=\"Retrieve a full compliance report by ID.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ZebraTruth — Runtime Compliance for AI Agents\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://zebratruthai.mintlify.app/_mintlify/api/og/v2?division=Jobs+%26+Reports\u0026amp;title=Get+compliance+report\u0026amp;description=Retrieve+a+full+compliance+report+by+ID.\u0026amp;theme=a5a701a9b75e19dc4c00f206\u0026amp;signature=4734884dea41ce5ef45f9b74668d978bfcb199ef3c545732e8da28ec9d22a8ab\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get compliance report - ZebraTruth — Runtime Compliance for AI Agents\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Retrieve a full compliance report by ID.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://zebratruthai.mintlify.app/_mintlify/api/og/v2?division=Jobs+%26+Reports\u0026amp;title=Get+compliance+report\u0026amp;description=Retrieve+a+full+compliance+report+by+ID.\u0026amp;theme=a5a701a9b75e19dc4c00f206\u0026amp;signature=4734884dea41ce5ef45f9b74668d978bfcb199ef3c545732e8da28ec9d22a8ab\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/zebratruthai/rTMeP4-q-BuDeEQw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ZebraTruth — Runtime Compliance for AI Agents\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3FB2FE\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/reports/get-compliance-report.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.zebratruth.ai/#organization\",\"name\":\"ZebraTruth — Runtime Compliance for AI Agents\",\"url\":\"https://docs.zebratruth.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/zebratruthai/gsHY39_GGp7teBef/logo/light.svg?fit=max\u0026auto=format\u0026n=gsHY39_GGp7teBef\u0026q=85\u0026s=a0210573e206e7c10145de436da1dab1\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.zebratruth.ai#website\",\"name\":\"ZebraTruth — Runtime Compliance for AI Agents\",\"url\":\"https://docs.zebratruth.ai\",\"publisher\":{\"@id\":\"https://docs.zebratruth.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report#webpage\",\"url\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report\",\"name\":\"Get compliance report\",\"description\":\"Retrieve a full compliance report by ID.\",\"dateModified\":\"2026-09-26T01:29:05.917Z\",\"isPartOf\":{\"@id\":\"https://docs.zebratruth.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Jobs \u0026 Reports\",\"item\":\"https://docs.zebratruth.ai/api-reference/jobs/poll-job-status\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get compliance report\",\"item\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report#apireference\",\"headline\":\"Get compliance report\",\"name\":\"Get compliance report\",\"description\":\"Retrieve a full compliance report by ID.\",\"url\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report\",\"mainEntityOfPage\":{\"@id\":\"https://docs.zebratruth.ai/api-reference/reports/get-compliance-report#webpage\"},\"dateModified\":\"2026-09-26T01:29:05.917Z\",\"publisher\":{\"@id\":\"https://docs.zebratruth.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.zebratruth.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ZebraTruth — Runtime Compliance for AI Agents\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ZebraTruth — Runtime Compliance for AI Agents","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/video-compliance-check"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Reference","href":"/api-reference/overview"}]},{"group":"Compliance Checks","pages":[{"title":"Run compliance check","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/check","href":"/api-reference/compliance/run-compliance-check"},{"title":"Check image rights","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/check-image","href":"/api-reference/compliance/check-image-rights"},{"title":"Extract text from a PDF or Word document","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/documents/extract","href":"/api-reference/documents/extract-text-from-a-pdf-or-word-document"}]},{"group":"Video","pages":[{"title":"Mint a video upload URL","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/media/upload-url","href":"/api-reference/video-compliance/mint-a-video-upload-url"},{"title":"Submit a video for compliance analysis","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/check-video","href":"/api-reference/video-compliance/submit-a-video-for-compliance-analysis"},{"title":"Poll video job status + retrieve report","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/check-video/{requestId}","href":"/api-reference/video-compliance/poll-video-job-status-+-retrieve-report"},{"title":"Retrieve the tenant's video webhook signing secret","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/webhooks/video/secret","href":"/api-reference/video-compliance/retrieve-the-tenants-video-webhook-signing-secret"},{"title":"Rotate the tenant's video webhook signing secret","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /compliance/webhooks/video/secret/rotate","href":"/api-reference/video-compliance/rotate-the-tenants-video-webhook-signing-secret"}]},{"group":"Agents","pages":[{"title":"List available agents","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /agents","href":"/api-reference/agents/list-available-agents"},{"title":"Invoke a single agent","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /agents/{agentId}","href":"/api-reference/agents/invoke-a-single-agent"}]},{"group":"Jobs \u0026 Reports","pages":[{"title":"Poll job status","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/jobs/{jobId}","href":"/api-reference/jobs/poll-job-status"},{"title":"Get agent execution trace","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/jobs/{jobId}/trace","href":"/api-reference/jobs/get-agent-execution-trace"},{"title":"Resume SSE stream","description":"Reconnect to a streaming compliance check after a disconnect.\nPartial results are persisted server-side. The stream resumes from\nthe next uncompleted agent.\n","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/jobs/{jobId}/stream","href":"/api-reference/jobs/resume-sse-stream"},{"title":"Get compliance report","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /reports/{reportId}","href":"/api-reference/reports/get-compliance-report"},{"title":"Replay a compliance check","description":"Re-run the exact same check to compare results (e.g., after a rules update).\nCreates a new job with a new budget reservation.\n","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /reports/{reportId}/replay","href":"/api-reference/reports/replay-a-compliance-check"}]},{"group":"Check History","pages":[{"title":"List past compliance checks","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/checks","href":"/api-reference/check-history/list-past-compliance-checks"},{"title":"Get a past check with its full report","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /compliance/checks/{requestId}","href":"/api-reference/check-history/get-a-past-check-with-its-full-report"},{"title":"Query request logs","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /logs","href":"/api-reference/observability/query-request-logs"}]},{"group":"Provenance","pages":[{"title":"Inspect Content Credentials on an image or video","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /media/provenance/inspect","href":"/api-reference/provenance/inspect-content-credentials-on-an-image-or-video"},{"title":"Sign an image or video with Content Credentials","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /media/provenance/sign","href":"/api-reference/provenance/sign-an-image-or-video-with-content-credentials"},{"title":"Poll a video signing job","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /media/provenance/jobs/{jobId}","href":"/api-reference/provenance/poll-a-video-signing-job"},{"title":"List registered signers","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /media/provenance/signers","href":"/api-reference/provenance/list-registered-signers"},{"title":"Register a signer","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /media/provenance/signers","href":"/api-reference/provenance/register-a-signer"},{"title":"Get the keys ZebraTruth signs endpoint requests with","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /media/provenance/signing-keys","href":"/api-reference/provenance/get-the-keys-zebratruth-signs-endpoint-requests-with"}]},{"group":"Account \u0026 Usage","pages":[{"title":"Validate API key","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /whoami","href":"/api-reference/authentication/validate-api-key"},{"title":"Get credit usage","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /usage","href":"/api-reference/authentication/get-credit-usage"},{"title":"Get usage totals by feature","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /usage/summary","href":"/api-reference/billing/get-usage-totals-by-feature"},{"title":"Get usage for one externalId","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /usage/project/{projectId}","href":"/api-reference/billing/get-usage-for-one-externalid"},{"title":"Get subscription status","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /subscription","href":"/api-reference/billing/get-subscription-status"},{"title":"Get engine version","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /version","href":"/api-reference/authentication/get-engine-version"}]},{"group":"Billing","pages":[{"title":"Start a subscription","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /billing/checkout","href":"/api-reference/billing/start-a-subscription"},{"title":"Upgrade Individual to Pro","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /billing/upgrade","href":"/api-reference/billing/upgrade-individual-to-pro"}]},{"group":"Webhooks","pages":[{"title":"List saved webhook endpoints","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /webhooks","href":"/api-reference/webhooks/list-saved-webhook-endpoints"},{"title":"Register a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /webhooks","href":"/api-reference/webhooks/register-a-webhook-endpoint"},{"title":"Remove a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml delete /webhooks/{webhookId}","href":"/api-reference/webhooks/remove-a-webhook-endpoint"},{"title":"Get webhook delivery logs","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /webhooks/deliveries","href":"/api-reference/webhooks/get-webhook-delivery-logs"}]},{"group":"Corpus","pages":[{"title":"Force refresh of legal corpus rows","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /corpus/refresh","href":"/api-reference/compliance/force-refresh-of-legal-corpus-rows"},{"title":"List corpus proposals awaiting review","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /memory/review-queue","href":"/api-reference/corpus/list-corpus-proposals-awaiting-review"},{"title":"Get the review packet for a proposal","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /memory/review-queue/{proposalId}","href":"/api-reference/corpus/get-the-review-packet-for-a-proposal"},{"title":"Approve a proposal","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /memory/review-queue/{proposalId}/approve","href":"/api-reference/corpus/approve-a-proposal"},{"title":"Reject a proposal","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /memory/review-queue/{proposalId}/reject","href":"/api-reference/corpus/reject-a-proposal"},{"title":"Send a proposal back for changes","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml post /memory/review-queue/{proposalId}/request_changes","href":"/api-reference/corpus/send-a-proposal-back-for-changes"},{"title":"Get the caller's reviewer profile","deprecated":null,"version":null,"openapi":"/openapi/zebratruth-v1.yaml get /memory/reviewer/me","href":"/api-reference/corpus/get-the-callers-reviewer-profile"}]}]}]},"title":"Get compliance report - ZebraTruth — Runtime Compliance for AI Agents","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}