cURL
curl --request GET --fail-with-body --max-time 30 \
"${AMLOK_API_BASE_URL}/v1/service-status" \
--header "Accept: application/json"import os
import requests
base_url = os.environ["AMLOK_API_BASE_URL"].rstrip("/")
headers = {'Accept': 'application/json'}
response = requests.request(
"GET", base_url + "/v1/service-status",
headers=headers, timeout=30, allow_redirects=False,
)
response.raise_for_status()
print(response.json())
const baseUrl = process.env.AMLOK_API_BASE_URL;
if (!baseUrl) throw new Error("Configure AMLOK_API_BASE_URL");
const headers = {
"Accept": "application/json"
};
const response = await fetch(baseUrl.replace(/\/$/, "") + "/v1/service-status", {
method: "GET", headers,
redirect: "error", signal: AbortSignal.timeout(30000),
});
if (!response.ok) throw new Error(`AMLOK returned HTTP ${response.status}`);
console.log(await response.json());{
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z",
"services": [
{
"id": "api",
"name": "API",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "insights",
"name": "AMLOK Insights",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "signal",
"name": "AMLOK Signal",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "connections",
"name": "Data connections",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "webhooks",
"name": "Webhook delivery",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "reporting",
"name": "Reporting",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
}
]
}{
"error": {
"code": "rate_limited",
"message": "AMLOK tenant quota or upstream throttle.",
"retryable": true,
"request_id": "req_example"
},
"meta": {
"request_id": "req_example",
"schema_version": "1.4.2",
"generated_at": "2026-10-23T14:00:00Z",
"data_status": "complete"
}
}{
"error": {
"code": "source_unavailable",
"message": "Required source temporarily unavailable.",
"retryable": true,
"request_id": "req_example"
},
"meta": {
"request_id": "req_example",
"schema_version": "1.4.2",
"generated_at": "2026-10-23T14:00:00Z",
"data_status": "complete"
}
}Platform
Service status
Public unauthenticated summary of AMLOK service availability. A successful HTTP 200 means the status report was retrieved; inspect the overall and per-service status to understand availability. unknown means a current state cannot be confirmed and must not be treated as operational. updated_at identifies the observation time; do not treat stale or unreachable status as healthy. Provider-specific freshness and account connection errors are separate from AMLOK service availability. This response contains no internal infrastructure identifiers or customer data.
GET
/
v1
/
service-status
cURL
curl --request GET --fail-with-body --max-time 30 \
"${AMLOK_API_BASE_URL}/v1/service-status" \
--header "Accept: application/json"import os
import requests
base_url = os.environ["AMLOK_API_BASE_URL"].rstrip("/")
headers = {'Accept': 'application/json'}
response = requests.request(
"GET", base_url + "/v1/service-status",
headers=headers, timeout=30, allow_redirects=False,
)
response.raise_for_status()
print(response.json())
const baseUrl = process.env.AMLOK_API_BASE_URL;
if (!baseUrl) throw new Error("Configure AMLOK_API_BASE_URL");
const headers = {
"Accept": "application/json"
};
const response = await fetch(baseUrl.replace(/\/$/, "") + "/v1/service-status", {
method: "GET", headers,
redirect: "error", signal: AbortSignal.timeout(30000),
});
if (!response.ok) throw new Error(`AMLOK returned HTTP ${response.status}`);
console.log(await response.json());{
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z",
"services": [
{
"id": "api",
"name": "API",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "insights",
"name": "AMLOK Insights",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "signal",
"name": "AMLOK Signal",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "connections",
"name": "Data connections",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "webhooks",
"name": "Webhook delivery",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
},
{
"id": "reporting",
"name": "Reporting",
"status": "operational",
"updated_at": "2026-10-23T14:00:00Z"
}
]
}{
"error": {
"code": "rate_limited",
"message": "AMLOK tenant quota or upstream throttle.",
"retryable": true,
"request_id": "req_example"
},
"meta": {
"request_id": "req_example",
"schema_version": "1.4.2",
"generated_at": "2026-10-23T14:00:00Z",
"data_status": "complete"
}
}{
"error": {
"code": "source_unavailable",
"message": "Required source temporarily unavailable.",
"retryable": true,
"request_id": "req_example"
},
"meta": {
"request_id": "req_example",
"schema_version": "1.4.2",
"generated_at": "2026-10-23T14:00:00Z",
"data_status": "complete"
}
}Authentication: public; no API key required.
Public unauthenticated summary of AMLOK service availability. A successful HTTP 200 means the status report was retrieved; inspect the overall and per-service status to understand availability. unknown means a current state cannot be confirmed and must not be treated as operational. updated_at identifies the observation time; do not treat stale or unreachable status as healthy. Provider-specific freshness and account connection errors are separate from AMLOK service availability. This response contains no internal infrastructure identifiers or customer data.
Product scope · Processing lifecycle · Errors