Compliance
Compliance endpoints let you check CSID status and run a ZATCA compliance test (sandbox). Use the status endpoint to monitor certificate expiry and usage. The test endpoint submits a minimal simplified invoice to the ZATCA compliance endpoint (sandbox only).
GET/v1/compliance/status
CSID status, cert expiry, usage
Returns compliance and certificate status for the tenant: CSID validity, certificate expiry, and usage info.
Requires API Key (Bearer)
Code examples
const res = await fetch('https://api.esnadapi.com/v1/compliance/status', {
headers: { Authorization: `Bearer ${apiKey}` },
});
const status = await res.json();Success response (200)
{
"status": "active",
"cert_expires_at": "2026-01-15T10:00:00.000Z",
"usage": {
"invoices_this_month": 150
}
}POST/v1/compliance/test
Run ZATCA compliance check (sandbox only)
Submits a minimal simplified invoice to the ZATCA compliance endpoint. Use to verify your EGS unit passes compliance (sandbox). Parity with ksa_compliance compliance checks.
Requires API Key (Bearer)
Request body
ComplianceTestDto
| Field | Type | Required | Description |
|---|---|---|---|
| egs_unit_id | string | Yes | EGS unit to run compliance check for |
Code examples
const res = await fetch('https://api.esnadapi.com/v1/compliance/test', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${apiKey}`,
},
body: JSON.stringify({ egs_unit_id: egsUnitId }),
});
const result = await res.json();Success response (200)
{
"success": true,
"message": "Compliance check submitted"
}