AerScheduler

Audit

Who changed what, and when.

2 endpoints · base URL https://api.aerscheduler.com

get/audit

List audit events

The organization's activity, newest first. Administrators only — this is every member's movements in one list.

Paged with limit and offset like every other collection here; pagination.total tells you how many match your filters.

Query parameters

entityType"reservation" | "invoice" | "squawk" | "resource" | "orgUser" | "joinRequest"Only events about this kind of thing.
actorOrgUserIdintegerOnly events by this member.
resourceIdintegerOnly events touching this aircraft, simulator or room.
startDatestringStart of the window, ISO 8601. Include an offset or Z.
endDatestringEnd of the window, ISO 8601.
limitintegerRows to return, 1–1000. Defaults to 1000; a larger value is clamped rather than rejected.
offsetintegerRows to skip, for paging. Defaults to 0.
sortstringField to order by before paging, as a dot path into the row — total, user.firstName. Omit to keep the endpoint's own order. Numbers and ISO timestamps order as numbers and instants, not as text, and empty values always sort last regardless of direction. Ordering happens before the page is cut, so it orders the whole collection rather than the page you are holding.
order"asc" | "desc"asc (default) or desc. Only meaningful with sort.

Responses

200OKThe audit events.{ data: AuditEvent[] }
400Bad RequestAn unreadable filter.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenAuthenticated, but not allowed to do this.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/audit \
  -H "Authorization: Bearer $AERSCHEDULER_KEY"
get/audit/{entityType}/{entityId}

Get one thing's history

Everything recorded about a single entity, oldest first — what the reservation and invoice drawers render. Guarded by the same rule that guards the entity itself, so this is never more permissive than the record it describes.

History begins when auditing was switched on; anything older cannot be reconstructed.

Path parameters

entityTyperequiredintegerOne of reservation, invoice, squawk, resource, orgUser, joinRequest.
entityIdrequiredintegerThe id of that entity.

Query parameters

limitintegerRows to return, 1–1000. Defaults to 1000; a larger value is clamped rather than rejected.
offsetintegerRows to skip, for paging. Defaults to 0.
sortstringField to order by before paging, as a dot path into the row — total, user.firstName. Omit to keep the endpoint's own order. Numbers and ISO timestamps order as numbers and instants, not as text, and empty values always sort last regardless of direction. Ordering happens before the page is cut, so it orders the whole collection rather than the page you are holding.
order"asc" | "desc"asc (default) or desc. Only meaningful with sort.

Responses

200OKThe events, oldest first.{ data: AuditEvent[] }
400Bad RequestNot an entity we keep a trail for.
401UnauthorizedNo token, an expired token, or a malformed one. Sign in again.
403ForbiddenYou are not allowed to see this entity.
429Too Many RequestsRate limited. Retry-After says how long to wait.
Example request
curl https://api.aerscheduler.com/audit/:entityType/:entityId \
  -H "Authorization: Bearer $AERSCHEDULER_KEY"