Public REST/JSON reference
AI Disclosure API
Maintain AI-feature disclosures that satisfy EU AI Act, NYC Local Law 144, California ADMT, and similar frameworks. Register the AI features in your product, classify their risk tier per framework, generate the disclosure copy (HTML + Markdown), publish to your site, and diff version-to-version when regulations change. Part of the Logic Igniter Content & Marketing bundle.
Access boundary
These examples describe public API calls only. Use the service output to review, score, summarize, analyze, or recommend; do not treat the API reference as permission for an assistant to write, send, publish, charge, schedule, notify, delete, or modify records.
Base URL
https://api.logicigniter.comAuth
Authorization: Bearer YOUR_API_KEYVersion
OpenAPI 3.0.3 · 1.0.0Operations rendered
17
Response models rendered
31
/api/v1/aidisclosure/healthService liveness
Liveness probe — returns 200 if the service is reachable.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/health" \ -H "Accept: application/json"
Responses
200Service healthy
/api/v1/aidisclosure/customersList customers
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
page_size | query | integer | |
page_token | query | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/customers" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
Page of customers
401ErrorMissing or invalid API key.
/api/v1/aidisclosure/customersProvision a customer
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request body (required)
Schema: CreateCustomerRequest
Sample JSON payload for evaluation.
{
"email": "[email protected]",
"name": "Example Inc."
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/customers" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"email":"[email protected]","name":"Example Inc."}'/api/v1/aidisclosure/customers/{id}Get a customer by id
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string (uuid) |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/customers/:id" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
/api/v1/aidisclosure/customers/{id}Update a customer
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string (uuid) |
Request body (required)
Schema: UpdateCustomerRequest
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X PUT "https://api.logicigniter.com/api/v1/aidisclosure/customers/:id" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{}'/api/v1/aidisclosure/featuresList registered AI features
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
page_size | query | integer | |
page_token | query | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/features" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
Page of features
401ErrorMissing or invalid API key.
/api/v1/aidisclosure/featuresRegister an AI feature
Register a single AI-powered feature in your product. Use the feature id later to classify against a framework or include in a disclosure.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request body (required)
Schema: RegisterFeatureRequest
Sample JSON payload for evaluation.
{
"name": "copilot-suggestions",
"description": "LLM-backed inline code completion",
"ai_type": "AI_TYPE_GENERATIVE"
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/features" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name":"copilot-suggestions","description":"LLM-backed inline code completion","ai_type":"AI_TYPE_GENERATIVE"}'/api/v1/aidisclosure/features/{id}/classifyClassify a feature against a framework
Run the framework's risk classifier against a registered feature. Returns the assigned risk tier and the list of disclosure topics that the framework requires for this feature.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string (uuid) |
Request body (required)
Schema: ClassifyFeatureRequest
Sample JSON payload for evaluation.
{
"framework_id": "eu-ai-act-2024"
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/features/:id/classify" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"framework_id":"eu-ai-act-2024"}'Responses
Classification
400ErrorMissing framework_id or unsupported framework
401ErrorMissing or invalid API key.
402ErrorEndpoint requires an active subscription. Free tier covers feature registration and framework browsing; paid plans unlock classification, generation, publishing, and rule overrides.
404ErrorFeature not found
/api/v1/aidisclosure/scanScan a manifest for AI features
Submit a manifest of your codebase / product surface (the format is intentionally opaque — accepts whatever shape your team produces) and get back the AI features detected, with auto-suggested ai_type and risk_tier for each.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request body (required)
Schema: ScanFeaturesRequest
Sample JSON payload for evaluation.
{
"manifest_json": "{\"features\":[{\"name\":\"copilot\",\"description\":\"LLM-backed code completion\"}]}"
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/scan" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"manifest_json":"{\"features\":[{\"name\":\"copilot\",\"description\":\"LLM-backed code completion\"}]}"}'/api/v1/aidisclosure/disclosures/generateGenerate a disclosure
Render a fresh disclosure (HTML + Markdown) covering one or more frameworks. Status defaults to DRAFT — call /publish to actually push it.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request body (required)
Schema: GenerateDisclosureRequest
Sample JSON payload for evaluation.
{
"framework_ids": [
"eu-ai-act-2024",
"nyc-ll144"
]
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/disclosures/generate" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"framework_ids":["eu-ai-act-2024","nyc-ll144"]}'Responses
201DisclosureGenerated disclosure
400ErrorEmpty framework_ids or unknown framework
401ErrorMissing or invalid API key.
402ErrorEndpoint requires an active subscription. Free tier covers feature registration and framework browsing; paid plans unlock classification, generation, publishing, and rule overrides.
/api/v1/aidisclosure/disclosures/{id}/publishPublish a disclosure
Publish the disclosure to the configured target (e.g. your site's `/ai-disclosure` page, a webhook, a CMS document). Returns success + the published URL.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string (uuid) |
Request body (required)
Schema: PublishDisclosureRequest
Sample JSON payload for evaluation.
{
"target_id": "site-page-ai-disclosure"
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X POST "https://api.logicigniter.com/api/v1/aidisclosure/disclosures/:id/publish" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"target_id":"site-page-ai-disclosure"}'Responses
Publish result
400ErrorMissing or unknown target_id
401ErrorMissing or invalid API key.
402ErrorEndpoint requires an active subscription. Free tier covers feature registration and framework browsing; paid plans unlock classification, generation, publishing, and rule overrides.
404ErrorDisclosure not found
/api/v1/aidisclosure/disclosures/currentGet the current published disclosure
Returns the latest PUBLISHED disclosure. Useful for embedding the disclosure on your site at request-time.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/disclosures/current" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
200DisclosureCurrent disclosure
401ErrorMissing or invalid API key.
404ErrorNo disclosure published yet
/api/v1/aidisclosure/disclosures/historyList disclosure history
Versioned history of published disclosures, with diff summaries from version to version. Useful for auditor questions like "what did your AI disclosure say on date X?".
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
page_size | query | integer | |
page_token | query | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/disclosures/history" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
Page of history entries
401ErrorMissing or invalid API key.
/api/v1/aidisclosure/disclosures/diffDiff two disclosure versions
Section-by-section diff between any two published versions. Each section reports whether it was ADDED / REMOVED / MODIFIED / UNCHANGED with the old and new text.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
version_arequired | query | string | |
version_brequired | query | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/disclosures/diff" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
200DiffResultDiff result
400ErrorMissing version_a or version_b
401ErrorMissing or invalid API key.
404ErrorOne or both versions not found
/api/v1/aidisclosure/frameworksList supported regulatory frameworks
Catalog of frameworks Logic Igniter currently supports — EU AI Act, NYC Local Law 144, California ADMT, etc. — with their jurisdiction, version, and effective dates.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
page_size | query | integer | |
page_token | query | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/frameworks" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Responses
Page of frameworks
401ErrorMissing or invalid API key.
/api/v1/aidisclosure/frameworks/{id}/requirementsGet framework requirements
Per-category requirements for a single framework — transparency, consent, data rights, accountability, safety, risk tiering, consumer notice/rights, bias audit. Each requirement includes the description, who it covers, the consumer rights granted, and the penalty text for non-compliance.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string |
Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X GET "https://api.logicigniter.com/api/v1/aidisclosure/frameworks/:id/requirements" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
/api/v1/aidisclosure/frameworks/{id}/rulesOverride framework classification rules
Replace the JSON rules used to classify features against this framework. Useful for workspace-specific risk-tolerance overrides or for previewing a regulation update before Logic Igniter ships the new defaults.
Public REST/JSON operation
This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string |
Request body (required)
Schema: UpdateRulesRequest
Sample JSON payload for evaluation.
{
"rules_json": "{\"high_risk_categories\":[\"biometric\",\"hiring\"]}"
}Request example
Replace placeholders with your confirmed access key and your own business data.
curl -X PUT "https://api.logicigniter.com/api/v1/aidisclosure/frameworks/:id/rules" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"rules_json":"{\"high_risk_categories\":[\"biometric\",\"hiring\"]}"}'Responses
200FrameworkUpdated framework
400ErrorUnparseable rules_json
401ErrorMissing or invalid API key.
402ErrorEndpoint requires an active subscription. Free tier covers feature registration and framework browsing; paid plans unlock classification, generation, publishing, and rule overrides.
404ErrorFramework not found
Data models
Error
| Field | Type | Notes |
|---|---|---|
errorrequired | string |
AIType
RiskTier
DisclosureStatus
ChangeType
RequirementCategory
Feature
RegisterFeatureRequest
| Field | Type | Notes |
|---|---|---|
namerequired | string | |
description | string | |
ai_type | AIType |
ListFeaturesResponse
| Field | Type | Notes |
|---|---|---|
items | array<Feature> | |
next_page_token | string | |
total_count | integer |
ClassifyFeatureRequest
| Field | Type | Notes |
|---|---|---|
framework_idrequired | string |
FeatureClassification
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
feature_id | string (uuid) | |
framework_id | string | |
risk_tier | RiskTier | |
required_disclosures | array<string> |
DetectedFeature
ScanFeaturesRequest
| Field | Type | Notes |
|---|---|---|
manifest_jsonrequired | string |
ScanFeaturesResponse
| Field | Type | Notes |
|---|---|---|
features | array<DetectedFeature> |
GenerateDisclosureRequest
| Field | Type | Notes |
|---|---|---|
framework_idsrequired | array<string> |
Disclosure
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
framework_id | string | |
content_html | string | |
content_markdown | string | |
version | integer | |
status | DisclosureStatus | |
created_at | string (date-time) | |
updated_at | string (date-time) |
PublishDisclosureRequest
| Field | Type | Notes |
|---|---|---|
target_idrequired | string |
PublishResult
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
success | boolean | |
target_url | string (uri) | |
published_at | string (date-time) |
DisclosureHistoryEntry
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
disclosure_id | string (uuid) | |
version | integer | |
publish_target | string | |
diff_summary | string | |
published_at | string (date-time) |
ListHistoryResponse
| Field | Type | Notes |
|---|---|---|
items | array<DisclosureHistoryEntry> | |
next_page_token | string | |
total_count | integer |
DiffSection
| Field | Type | Notes |
|---|---|---|
section_name | string | |
change_type | ChangeType | |
old_text | string | |
new_text | string |
DiffResult
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
sections | array<DiffSection> |
Framework
| Field | Type | Notes |
|---|---|---|
id | string | |
name | string | |
jurisdiction | string | Example: "EU" |
version | string | |
rules_json | string | |
effective_date | string (date-time) | |
created_at | string (date-time) |
ListFrameworksResponse
| Field | Type | Notes |
|---|---|---|
items | array<Framework> | |
next_page_token | string | |
total_count | integer |
Requirement
| Field | Type | Notes |
|---|---|---|
category | RequirementCategory | |
description | string | |
covered_entities | array<string> | |
consumer_rights | array<string> | |
penalty_text | string |
FrameworkRequirements
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
framework_id | string | |
requirements | array<Requirement> |
UpdateRulesRequest
| Field | Type | Notes |
|---|---|---|
rules_jsonrequired | string |
CreateCustomerRequest
| Field | Type | Notes |
|---|---|---|
emailrequired | string (email) | |
namerequired | string |
UpdateCustomerRequest
| Field | Type | Notes |
|---|---|---|
email | string (email) | |
name | string |
Customer
| Field | Type | Notes |
|---|---|---|
id | string (uuid) | |
email | string (email) | |
name | string | |
created_at | string (date-time) |
CustomersResponse
| Field | Type | Notes |
|---|---|---|
items | array<Customer> | |
next_page_token | string | |
total_count | integer |

