For the complete documentation index, see llms.txt. This page is also available as Markdown.

Safety & Monitoring

Agent safety guidance, supported audit and PHI-access evidence, configured retention policy, and compliance reporting boundaries.

This page covers the safety model, the audit trail, retention, and compliance reporting. The other pages in this section cover the rest of the monitoring and observability surface:

  • Analytics & Observability - workspace analytics, call intelligence aggregates, recordings, dashboards, the real-time event stream, and private-preview external-write proposal review

  • Insights - read-only SQL, schema discovery, and workspace health digests

  • Metric Store - built-in and custom metric definitions, AI evaluation, and metric queries

  • Call Trace Analysis - per-call emotional arcs, key decision moments, and coaching recommendations

  • Voice Judge - audio-native quality scores across ten voice dimensions

  • Production Evals - assertion and metric checks against live completed calls

  • Simulation Coverage - systematic exploration of context graph state space

  • Prompt Logs - full LLM inputs and outputs for auditing and debugging

  • Trace Export - tool-call trace spans for external observability collectors

Safety Model

Safety behavior is authored in the agent and its Context Graph through guidance, entry states, exit conditions, eligible tools, and escalation instructions. A model can still miss or misclassify a concern, so teams must test representative cases and preserve a human fallback. Supported workflows can forward a call or let an operator join; there is no separate configuration surface that makes every conversation independently safety-certified.

See Voice Agent for the call escalation flow and Operators for the operator join flow.

Audit Trail

The Platform API provides a workspace-scoped audit surface for supported event producers. Covered routes and services record the context available to that producer; the audit API is not proof that every platform action or downstream system mutation was captured.

PHI Access Logging

Supported PHI-sensitive routes classify their audit events, including selected entity reads, FHIR patient data, call recordings, call intelligence, and audit-report access. Covered events use phi_accessed: true for reporting. Validate route coverage against your own audit requirements instead of assuming the PHI report observes every access path.

Audit publication is separate from the primary operation on supported asynchronous paths. An operation can therefore succeed even if its audit write is delayed or fails; monitor audit delivery rather than treating it as transactionally coupled evidence.

Audit Query Endpoints

All audit query endpoints require admin or owner permissions and are workspace-scoped.

List Audit Events

List Audit Events

get

List audit events with filters and pagination.

Permissions: admin, owner (Audit.view)

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
servicestring · max: 64 · nullableOptional

Filter by service name

actionstring · max: 128 · nullableOptional

Filter by action type

actor_entity_idstring · uuid · nullableOptional

Filter by actor entity

resource_typestring · max: 64 · nullableOptional

Filter by resource type

resource_idstring · uuid · nullableOptional

Filter by specific resource

phi_onlybooleanOptional

Only PHI access events

Default: false
date_fromstring · date-time · nullableOptional

Start of date range

date_tostring · date-time · nullableOptional

End of date range

limitinteger · min: 1 · max: 100Optional

Page size

Default: 50
offsetintegerOptional

Page offset

Default: 0
Responses
200

Successful Response

application/json
totalintegerRequired
limitintegerRequired
offsetintegerRequired
has_morebooleanRequired
get/v1/{workspace_id}/audit
GET /v1/{workspace_id}/audit HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "events": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
      "timestamp": "text",
      "service": "text",
      "actor_entity_id": "123e4567-e89b-12d3-a456-426614174000",
      "actor_credential_id": "123e4567-e89b-12d3-a456-426614174000",
      "action": "text",
      "resource_type": "text",
      "resource_id": "text",
      "resource_name": "text",
      "ip_address": "text",
      "user_agent": "text",
      "metadata": {
        "ANY_ADDITIONAL_PROPERTY": "anything"
      },
      "phi_accessed": false
    }
  ],
  "total": 1,
  "limit": 1,
  "offset": 1,
  "has_more": true
}

Get the PHI Access Report

Get Phi Access Report

get

PHI access report — who accessed what patient data, when, from where.

Required for HIPAA breach investigation (§164.312(b)).

Permissions: admin, owner (Audit.view)

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
entity_idstring · uuid · nullableOptional

Filter by patient entity

date_fromstring · date-time · nullableOptional

Start of date range

date_tostring · date-time · nullableOptional

End of date range

limitinteger · min: 1 · max: 100Optional

Page size

Default: 50
offsetintegerOptional

Page offset

Default: 0
Responses
200

Successful Response

application/json
totalintegerRequired
limitintegerRequired
offsetintegerRequired
has_morebooleanRequired
get/v1/{workspace_id}/audit/phi-access
GET /v1/{workspace_id}/audit/phi-access HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "events": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
      "timestamp": "text",
      "service": "text",
      "actor_entity_id": "123e4567-e89b-12d3-a456-426614174000",
      "actor_credential_id": "123e4567-e89b-12d3-a456-426614174000",
      "action": "text",
      "resource_type": "text",
      "resource_id": "text",
      "resource_name": "text",
      "ip_address": "text",
      "user_agent": "text",
      "metadata": {
        "ANY_ADDITIONAL_PROPERTY": "anything"
      },
      "phi_accessed": false
    }
  ],
  "total": 1,
  "limit": 1,
  "offset": 1,
  "has_more": true
}

Get an Entity Access Log

Get Entity Access Log

get

Per-entity access history — all audit events for a specific resource.

Permissions: admin, owner (Audit.view)

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
entity_idstring · uuidRequired
Query parameters
date_fromstring · date-time · nullableOptional

Start of date range

date_tostring · date-time · nullableOptional

End of date range

limitinteger · min: 1 · max: 100Optional

Page size

Default: 50
offsetintegerOptional

Page offset

Default: 0
Responses
200

Successful Response

application/json
totalintegerRequired
limitintegerRequired
offsetintegerRequired
has_morebooleanRequired
get/v1/{workspace_id}/audit/entity/{entity_id}/access-log
GET /v1/{workspace_id}/audit/entity/{entity_id}/access-log HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "events": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
      "timestamp": "text",
      "service": "text",
      "actor_entity_id": "123e4567-e89b-12d3-a456-426614174000",
      "actor_credential_id": "123e4567-e89b-12d3-a456-426614174000",
      "action": "text",
      "resource_type": "text",
      "resource_id": "text",
      "resource_name": "text",
      "ip_address": "text",
      "user_agent": "text",
      "metadata": {
        "ANY_ADDITIONAL_PROPERTY": "anything"
      },
      "phi_accessed": false
    }
  ],
  "total": 1,
  "limit": 1,
  "offset": 1,
  "has_more": true
}

Get the Audit Summary

Get Audit Summary

get

Audit summary statistics for compliance dashboard.

Permissions: admin, owner (Audit.view)

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
date_fromstring · date-time · nullableOptional

Start of date range

date_tostring · date-time · nullableOptional

End of date range

Responses
200

Successful Response

application/json
total_eventsintegerRequired
phi_access_eventsintegerRequired
unique_actorsintegerRequired
services_with_eventsintegerRequired
get/v1/{workspace_id}/audit/summary
GET /v1/{workspace_id}/audit/summary HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "total_events": 1,
  "phi_access_events": 1,
  "unique_actors": 1,
  "services_with_events": 1
}

Data Lineage

For entity-level provenance and the currently populated lineage fields, see Entity Intelligence. Compatibility arrays that are empty do not establish destination-delivery or review history.

Retention Policies

Get the Retention Policy

Get retention policy

get

Get the workspace retention policy.

Returns HIPAA-compliant defaults (2190 days / 6 years) for any field not explicitly configured. Advisory in v1 — no automated deletion.

Permissions: authenticated (any role).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Responses
200

Successful Response

application/json
call_recordings_daysintegerRequired
call_transcripts_daysintegerRequired
audit_log_daysintegerRequired
world_events_daysintegerRequired
phi_data_daysintegerRequired
legal_holdbooleanRequired
legal_hold_reasonstring · nullableOptional
get/v1/{workspace_id}/settings/retention
GET /v1/{workspace_id}/settings/retention HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "call_recordings_days": 1,
  "call_transcripts_days": 1,
  "audit_log_days": 1,
  "world_events_days": 1,
  "phi_data_days": 1,
  "legal_hold": true,
  "legal_hold_reason": "text"
}

Returns configured defaults of 2,190 days (6 years) for fields that are not explicitly set. A stored duration is not by itself a compliance determination.

Update the Retention Policy

Update retention policy

put

Update the workspace retention policy.

Partial updates supported — only provided fields are changed. Advisory in v1: policy is stored and displayed but no automated deletion is performed. Legal hold overrides all retention.

Permissions: admin, owner (Workspace.update).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Body
call_recordings_daysinteger · min: 365 · max: 36500 · nullableOptional
call_transcripts_daysinteger · min: 365 · max: 36500 · nullableOptional
audit_log_daysinteger · min: 365 · max: 36500 · nullableOptional
world_events_daysinteger · min: 365 · max: 36500 · nullableOptional
phi_data_daysinteger · min: 365 · max: 36500 · nullableOptional
legal_holdboolean · nullableOptional
legal_hold_reasonstring · max: 2000 · nullableOptional
Responses
200

Successful Response

application/json
call_recordings_daysintegerRequired
call_transcripts_daysintegerRequired
audit_log_daysintegerRequired
world_events_daysintegerRequired
phi_data_daysintegerRequired
legal_holdbooleanRequired
legal_hold_reasonstring · nullableOptional
put/v1/{workspace_id}/settings/retention
PUT /v1/{workspace_id}/settings/retention HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 156

{
  "call_recordings_days": 1,
  "call_transcripts_days": 1,
  "audit_log_days": 1,
  "world_events_days": 1,
  "phi_data_days": 1,
  "legal_hold": true,
  "legal_hold_reason": "text"
}
{
  "call_recordings_days": 1,
  "call_transcripts_days": 1,
  "audit_log_days": 1,
  "world_events_days": 1,
  "phi_data_days": 1,
  "legal_hold": true,
  "legal_hold_reason": "text"
}

Updates are partial: omitted fields remain unchanged.

The retention GET endpoint is available to any authenticated user; the PUT endpoint requires admin or owner. Retention changes are audit-logged.

Retention policies are currently advisory: the policy is stored and displayed but automated deletion is not yet enforced.

Audit Log Export

Create an Audit Export

Create Audit Export

post

Submit an async audit-events export.

Runs the filtered query on the SQL warehouse with results staged to presigned CSV EXTERNAL_LINKS, and returns a Databricks statement_id. Poll GET /export/{statement_id} for the download links. Nothing is materialized in platform-api, so the export scales to large date windows.

Permissions: admin, owner

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Body
date_fromstring · date-timeRequired
date_tostring · date-timeRequired
servicestring · max: 64 · nullableOptional

Filter by service name.

actionstring · max: 128 · nullableOptional

Filter by action type.

phi_onlybooleanOptionalDefault: false
Responses
200

Successful Response

application/json
statement_idstringRequired

Databricks statement handle — poll GET /export/{statement_id} for links.

statusstring · enumRequired

pending: still running. ready: links available immediately.

Possible values:
post/v1/{workspace_id}/audit/export
POST /v1/{workspace_id}/audit/export HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 127

{
  "date_from": "2026-01-01T00:00:00.000Z",
  "date_to": "2026-01-01T00:00:00.000Z",
  "service": "text",
  "action": "text",
  "phi_only": false
}
{
  "statement_id": "text",
  "status": "pending"
}

List Audit Exports

Download an Audit Export

Exports are generated synchronously, stored as NDJSON, and downloaded through the authenticated Platform API path rather than a presigned, time-limited URL. Each export is capped at 50,000 events. Use the bare {export_id}.ndjson filename returned by the export surface when downloading.

Creating and downloading an export each records an audit event with phi_accessed: true, because an export can re-expose PHI access evidence.

Returns 503 if export storage is not configured for the deployment.

Requires admin or owner permissions.

Compliance Reports

These reports provide compliance-oriented summaries and access evidence.

Get the Compliance Dashboard

Compliance dashboard composite

get

Composite compliance dashboard — HIPAA status, retention, credentials summary.

Aggregates compliance signals into a single dashboard view.

Permissions: admin, owner (Audit.view).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Responses
200

Successful Response

application/json

Composite compliance health overview.

hipaa_statusstringRequired
retention_daysinteger · nullableRequired
legal_holdbooleanRequired
total_credentialsintegerRequired
active_credentialsintegerRequired
last_audit_exportstring · nullableRequired
generated_atstringRequired
get/v1/{workspace_id}/compliance/dashboard
GET /v1/{workspace_id}/compliance/dashboard HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "hipaa_status": "text",
  "retention_days": 1,
  "legal_hold": true,
  "total_credentials": 1,
  "active_credentials": 1,
  "last_audit_export": "text",
  "generated_at": "text"
}

Get the HIPAA Evidence Report

HIPAA compliance evidence report

get

HIPAA compliance evidence report.

Aggregates audit statistics, retention policy, encryption status, and API key summary for the specified period. Identity-specific fields (MFA, SSO, lockout) return null pending integration.

Permissions: admin, owner (Audit.view).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
report_period_daysinteger · min: 1 · max: 365Optional

Report period in days

Default: 90
Responses
200

Successful Response

application/json
generated_atstringRequired
report_period_daysintegerRequired
workspace_idstring · uuidRequired
compliance_statusstringRequired
get/v1/{workspace_id}/compliance/hipaa
GET /v1/{workspace_id}/compliance/hipaa HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "generated_at": "text",
  "report_period_days": 1,
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "audit_summary": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "retention_policy": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "encryption": {
    "ANY_ADDITIONAL_PROPERTY": true
  },
  "access_controls": {
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "api_key_summary": {
    "ANY_ADDITIONAL_PROPERTY": 1
  },
  "compliance_status": "text"
}

Get the Access Review

Access review export

get

Access review export for SOC2 attestation.

Lists all API key credentials with role, status, and activity dates. Download, review, and upload signed attestation for SOC2 compliance.

Permissions: admin, owner (Audit.view).

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Responses
200

Successful Response

application/json
generated_atstringRequired
workspace_idstring · uuidRequired
total_credentialsintegerRequired
jwt_credentials_notestringRequired
get/v1/{workspace_id}/compliance/access-review
GET /v1/{workspace_id}/compliance/access-review HTTP/1.1
Host: api.platform.amigo.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "generated_at": "text",
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "credentials": [
    {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "total_credentials": 1,
  "jwt_credentials_note": "text"
}

All three require admin or owner permissions. Treat their responses as product evidence, not an independent certification or a complete assessment of the customer's control environment.

Last updated

Was this helpful?