Compliance
Get a compliance product revision history
Get source hashes, field schemas, certification policies, diffs, and validation state for every known revision.
Method
GET
Path
/v1/compliance-products/{productSlug}/revisions
Required scope
compliance:readRequest
curl -X GET "https://api.endurancehq.app/v1/compliance-products/{productSlug}/revisions" \
-H "Authorization: Bearer $EHQ_API_KEY"Path parameters
productSlugstring, requiredResponse
Success status: 200
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"product": {
"type": "object",
"properties": {
"authority": {
"type": "string"
},
"jurisdictionCountry": {
"type": "string"
},
"jurisdictionRegion": {
"type": [
"string",
"null"
]
},
"productNumber": {
"type": "string"
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"aboutUrl": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"currentSourceUrl": {
"type": "string",
"format": "uri"
},
"draftSourceUrl": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"instructionsUrl": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"capabilities": {
"type": "array",
"items": {
"type": "string",
"enum": [
"generate",
"collect",
"sign",
"submit",
"evaluate"
]
}
},
"supportedEntityTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"submissionMethod": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"active",
"retired"
]
}
},
"required": [
"authority",
"jurisdictionCountry",
"jurisdictionRegion",
"productNumber",
"slug",
"title",
"aboutUrl",
"currentSourceUrl",
"draftSourceUrl",
"instructionsUrl",
"capabilities",
"supportedEntityTypes",
"submissionMethod",
"status"
],
"additionalProperties": false
},
"revisions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"revisionLabel": {
"type": "string"
},
"officialStatus": {
"type": "string",
"enum": [
"draft",
"current",
"superseded"
]
},
"reviewStatus": {
"type": "string",
"enum": [
"detected",
"reviewing",
"validated",
"blocked",
"active",
"retired"
]
},
"sourceUrl": {
"type": "string",
"format": "uri"
},
"sourceArtifactHash": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"textHash": {
"anyOf": [
{
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
{
"type": "null"
}
]
},
"fieldSchemaHash": {
"anyOf": [
{
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
{
"type": "null"
}
]
},
"pageCount": {
"anyOf": [
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"fieldInventory": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"text",
"checkbox",
"radio",
"dropdown",
"signature",
"unknown"
]
},
"options": {
"type": "array",
"items": {
"type": "string"
}
},
"mappingState": {
"type": "string",
"enum": [
"mapped",
"ignored",
"unreviewed"
]
},
"semanticKey": {
"type": "string"
}
},
"required": [
"name",
"type"
],
"additionalProperties": false
}
},
"fieldSchema": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"certificationStatements": {
"type": "array",
"items": {
"type": "string"
}
},
"certificationVersion": {
"type": [
"string",
"null"
]
},
"certificationHash": {
"anyOf": [
{
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
{
"type": "null"
}
]
},
"signaturePolicy": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"publishedOn": {
"type": [
"string",
"null"
]
},
"effectiveFrom": {
"type": [
"string",
"null"
]
},
"effectiveTo": {
"type": [
"string",
"null"
]
},
"diffSummary": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"validation": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"detectedAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
"reviewedAt": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"activatedAt": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"supersededAt": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"revisionLabel",
"officialStatus",
"reviewStatus",
"sourceUrl",
"sourceArtifactHash",
"textHash",
"fieldSchemaHash",
"pageCount",
"fieldInventory",
"fieldSchema",
"certificationStatements",
"certificationVersion",
"certificationHash",
"signaturePolicy",
"publishedOn",
"effectiveFrom",
"effectiveTo",
"diffSummary",
"validation",
"detectedAt",
"reviewedAt",
"activatedAt",
"supersededAt"
],
"additionalProperties": false
}
}
},
"required": [
"product",
"revisions"
],
"additionalProperties": false
}
},
"required": [
"data"
],
"additionalProperties": false
}Other surfaces
CLI: ehq compliance products revisions <product_slug>
MCP tool: ehq_compliance_product_revisions_list