LLM governance / policy control planeCompliance
Export Policy Gateway audit logs to Amazon S3
Archive Policy Gateway audit logs in S3 so compliance teams can retain events for long-term investigations.
Exports are available on enterprise plans; contact help@abliteration.ai to enable a log export sink.
Quick start
Example request
{
"destination": "s3",
"bucket": "ai-audit-logs",
"prefix": "policy-gateway/",
"format": "jsonl"
}Service notes
- Pricing model: Usage-based pricing (~$5 per 1M tokens) billed on total tokens (input + output). See the API pricing page for current plans.
- Data retention: No prompt/output retention by default. Operational telemetry (token counts, timestamps, error codes) is retained for billing and reliability.
- Compatibility: OpenAI-style /v1/chat/completions request and response format with a base URL switch.
- Latency: Depends on model size, prompt length, and load. Streaming reduces time-to-first-token.
- Throughput: Team plans include priority throughput. Actual throughput varies with demand.
- Rate limits: Limits vary by plan and load. Handle 429s with backoff and respect any Retry-After header.
What gets exported
Policy Gateway audit logs include consistent decision metadata for compliance reviews.
policy_id,decision,effective_decision,reason_codepolicy_user,project_id,policy_targetfor audit trailsrollout_mode,enforcedfor rollout trackingtriggered_categories,allowlist_hits,denylist_hitsmodel,created_at, and optional data classification tags
Export configuration
Write audit logs as JSON lines files in S3.
- Create a dedicated bucket and prefix for audit logs.
- Partition by date to keep queries efficient.
- Encrypt objects with SSE-S3 or SSE-KMS for compliance requirements.
Recommended S3 object layout
Partition by date so Athena and other tools can query efficiently.
Recommended S3 object layout
s3://ai-audit-logs/policy-gateway/date=2026-01-16/part-00001.jsonl
Sample JSON line
Each line is a single audit log event.
Sample JSON line
{"policy_id":"support-guardrails","decision":"rewrite","effective_decision":"rewrite","reason_code":"REWRITE","policy_user":"user-12345","project_id":"support-bot","policy_target":"support-bot","rollout_mode":"enforced","enforced":true,"triggered_categories":["self-harm/intent"],"allowlist_hits":["refund policy"],"denylist_hits":[],"model":"abliterated-model","created_at":"2026-01-16T18:22:11Z"}Verification checklist
- Confirm new objects appear in the expected date prefix.
- Run an Athena query filtering on
policy_idanddecision. - Validate object encryption and retention policies.
Common errors & fixes
- 401 Unauthorized: Check that your API key is set and sent as a Bearer token.
- 404 Not Found: Make sure the base URL ends with /v1 and you call /chat/completions.
- 400 Bad Request: Verify the model id and that messages are an array of { role, content } objects.
- 429 Rate limit: Back off and retry. Use the Retry-After header for pacing.