Compliance grid
curl --request GET \
--url https://api.sortx.co.uk/compliance/grid \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.sortx.co.uk/compliance/grid', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sortx.co.uk/compliance/grid"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"today": "<string>",
"dataAsOf": "<string>",
"items": [
{
"propertyId": "<string>",
"address": "<string>",
"postcode": "<string>",
"town": "<string>",
"landlordContactId": "<string>",
"landlord": "<string>",
"standing": "compliant",
"cells": {
"facts": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"gas_safety": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"eicr": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"epc": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"smoke_co": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"licence": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"legionella": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"pat": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"prs_database": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"epc_band_c": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
}
}
}
],
"total": 123,
"page": 123,
"pageSize": 123,
"summary": {
"properties": 123,
"withObligations": 123,
"compliant": 123,
"notCompliant": 123,
"unknown": 123,
"percentCompliant": 123,
"columns": {
"facts": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"gas_safety": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"eicr": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"epc": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"smoke_co": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"licence": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"legionella": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"pat": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"prs_database": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"epc_band_c": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
}
}
},
"towns": [
"<string>"
],
"landlords": [
{
"id": "<string>",
"name": "<string>"
}
]
}{
"_tag": "TenantCreateRejected",
"reason": "<string>",
"field": "<string>"
}{
"_tag": "Unauthenticated"
}{
"_tag": "TenantSuspended",
"tenantId": "<string>",
"reason": "<string>"
}{
"_tag": "EntitlementMissing",
"tenantId": "<string>",
"moduleId": "<string>"
}{
"_tag": "TenantNotFound",
"slug": "<string>"
}{
"_tag": "WebhookDuplicate",
"integration": "<string>",
"externalId": "<string>"
}{
"_tag": "RateLimited",
"key": "<string>",
"retryAfterSeconds": 123,
"message": "<string>"
}{
"_tag": "IntegrationUnavailable",
"integration": "<string>",
"detail": "<string>"
}compliance
Compliance grid
One page of the compliance grid: every active property against every obligation, worst first, with % compliant and per-column counts over the whole filtered set
GET
/
compliance
/
grid
Compliance grid
curl --request GET \
--url https://api.sortx.co.uk/compliance/grid \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.sortx.co.uk/compliance/grid', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sortx.co.uk/compliance/grid"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"today": "<string>",
"dataAsOf": "<string>",
"items": [
{
"propertyId": "<string>",
"address": "<string>",
"postcode": "<string>",
"town": "<string>",
"landlordContactId": "<string>",
"landlord": "<string>",
"standing": "compliant",
"cells": {
"facts": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"gas_safety": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"eicr": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"epc": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"smoke_co": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"licence": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"legionella": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"pat": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"prs_database": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
},
"epc_band_c": {
"state": "compliant",
"label": "<string>",
"status": "<string>",
"expiresOn": "<string>",
"documentId": "<string>"
}
}
}
],
"total": 123,
"page": 123,
"pageSize": 123,
"summary": {
"properties": 123,
"withObligations": 123,
"compliant": 123,
"notCompliant": 123,
"unknown": 123,
"percentCompliant": 123,
"columns": {
"facts": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"gas_safety": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"eicr": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"epc": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"smoke_co": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"licence": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"legionella": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"pat": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"prs_database": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
},
"epc_band_c": {
"compliant": 123,
"attention": 123,
"breach": 123,
"not_required": 123,
"unknown": 123
}
}
},
"towns": [
"<string>"
],
"landlords": [
{
"id": "<string>",
"name": "<string>"
}
]
}{
"_tag": "TenantCreateRejected",
"reason": "<string>",
"field": "<string>"
}{
"_tag": "Unauthenticated"
}{
"_tag": "TenantSuspended",
"tenantId": "<string>",
"reason": "<string>"
}{
"_tag": "EntitlementMissing",
"tenantId": "<string>",
"moduleId": "<string>"
}{
"_tag": "TenantNotFound",
"slug": "<string>"
}{
"_tag": "WebhookDuplicate",
"integration": "<string>",
"externalId": "<string>"
}{
"_tag": "RateLimited",
"key": "<string>",
"retryAfterSeconds": 123,
"message": "<string>"
}{
"_tag": "IntegrationUnavailable",
"integration": "<string>",
"detail": "<string>"
}Authorizations
A workspace API key (Settings → API keys), scoped to <group>:read / <group>:write.
Query Parameters
Response
Success