Compliance records
Export and verify the tamper-evident log of every compliance decision.
Before every call, oyehello checks it against your compliance rules (DND, opt-outs, calling hours, frequency caps, …) and records the decision. Records are hash-chained: each one includes a hash of the one before, so changing or deleting any past record breaks the chain. Consents and grievances are kept in chains of their own.
These endpoints need the compliance:read scope. The records include call-level personal data, so grant it only where needed.
Verify the records
GET /v1/audit/verify · scope compliance:read
Re-checks every chain from start to end:
{
"data": {
"verified": true,
"records": 18234,
"chains": [
{ "name": "audit", "verified": true, "records": 18234 },
{ "name": "grievances", "verified": true, "records": 3 },
{ "name": "consent", "verified": true, "records": 911 }
]
}
}
verified: false means a record was altered after it was written. Contact support.
Export the decision log
GET /v1/audit/export · scope compliance:read
| Param | Type | Notes |
|---|---|---|
from / to |
ISO-8601 | The date range to export. Omit for everything. |
format |
string | csv (default) or pdf. |
Returns the file itself (not JSON). Each row carries its integrity hash and the previous record’s hash, so an auditor can re-verify the chain independently. The whole chain is verified first and the result is stated in the file.
- CSV - starts with a UTF-8 byte-order mark (so Excel opens it with the right encoding). The columns are
seq,timestamp,interaction_id,decision,blocked_by,gate_results,outcome,recording_ref,consent_ref,integrity_hash,prev_hash, then three trailing columns:is_test(a test call),channel(voiceorchat) andagent_id. The trailing three are not part of the hashed record, so they never affect chain verification. - PDF - one row per decision with Agent, Channel and Test columns alongside the sequence, timestamp, interaction, decision and gate / reason.
Blocked-call statistics
GET /v1/audit/stats?from=…&to=… · scope compliance:read
How many calls your rules blocked, broken down by rule, by day and by agent. These are the same numbers as the console’s Analytics → Compliance page.
Next: Wallet →