Python SDKManagement API
Audit Events
Query the project audit log with rich filters for action, level, actor, target type, and time window.
project.audit_events is an AuditEventCollection. Every significant action in a project
is recorded as an audit event with a timestamp, action name, level, category, actor, and
target references.
The default sort order is timestamp descending — most recent events first.
Basic list
from optixlog import SDKClient
from optixlog.management import Management
client = SDKClient(base_url="https://optixlog.leidos.com", api_key="sk-opt-...")
mgmt = Management(client)
project = mgmt.project("proj_grating_7f3a")
page = project.audit_events.list()
for event in page.items:
print(event.timestamp, event.action, event.level)Filters
All filters are AND. You can combine any subset:
from datetime import datetime, timezone
page = project.audit_events.list(
action="project.updated", # exact action name
category="management", # event category
level="info", # "debug" | "info" | "warn" | "error"
actor_id="user-xyz", # user id who performed the action
target_type="project", # target resource type (see below)
request_id=None, # correlate by request id
since=datetime(2026, 1, 1, tzinfo=timezone.utc),
until=datetime(2026, 6, 1, tzinfo=timezone.utc),
limit=50,
order_by="timestamp",
order="desc",
)Valid target_type values: organization, project, team, user, workflow_node,
file, invitation, permission_group.
Get by id
event = project.audit_events.get("audit-event-abc123")
event = project.audit_events.get_or_none("audit-event-abc123")Iterate all events
from datetime import datetime, timezone
for event in project.audit_events.iter(
level="warn",
since=datetime(2026, 1, 1, tzinfo=timezone.utc),
):
print(event.timestamp, event.action, event.description)Count
warn_count = project.audit_events.count(level="warn")
info_count = project.audit_events.count(level="info", category="management")Unique lookups
# Exactly one event with this request_id
event = project.audit_events.one(request_id="req-abc123")
# Most recent project.updated event
event = project.audit_events.first(action="project.updated")Ordering
Order by timestamp, action, or level. Default is timestamp descending.
page = project.audit_events.list(order_by="action", order="asc")AuditEvent fields
Prop
Type