Skip to main content
Maxi AI Core records all significant actions in an append-only audit log. Every content mutation, license activation, AI provider key rotation, OAuth token event, email send, and data masking change leaves a permanent entry you can query at any time. Use the audit log to review what agents have done, investigate unexpected behavior, and verify that your security controls are working as expected.
Query the audit log regularly — not just when something goes wrong. Unexpected patterns (content created at unusual times, repeated token validation failures, unrecognized OAuth clients) are easier to catch early.

Querying events

Call maxi/get-audit-events to retrieve audit log entries. You can filter by category, specific event name, or a timestamp to narrow results. Parameters:

Example: all content mutations

Example: license events only

Example: events since a specific time

Response format

Each audit log entry has the following fields:

Example response entry

Event categories

Records every change to posts, pages, and custom post types.
Records all AI provider credential activity.Both events include the provider name in context.
Records license activation and deactivation events.
Records every stage of the OAuth 2.1 flow — client registration, authorization, token issuance, and revocation.
Token validation failures with reason: unknown_or_expired_or_revoked are worth monitoring — repeated failures may indicate a misconfigured client or a stolen token replay attempt.
Records significant note lifecycle events.
Records every WP-CLI command attempted via maxi/run-wp-cli, including rejected commands and the rejection reason.
Records every email sent via maxi/send-email. Includes recipient, subject, and from identity. The email body is not logged.
Records additions and removals from the GDPR data masking field list managed via maxi/manage-mask-fields.
Records rule-related events, including blocked ability calls and rule sync operations.

Audit log integrity

The audit log is append-only. Each entry is recorded with a tamper-evident hash incorporating prior entries — modifying historical records breaks the chain from that point forward. Query the log regularly and investigate any unexpected gaps or patterns in the recorded events.