I'mBoardDocs
Resources

Board Audit Log

A chronological trail of governance-relevant actions taken on a board.

The audit log provides a chronological trail of actions taken on a board — membership changes, document activity, meeting lifecycle events, action item changes, and more. It exists for governance tracking and compliance, independent of whether a UI has been built to browse it.

Legacy, admin-only endpoint

This is a legacy endpoint — its path does not carry a /api/v1 prefix and it is not reachable at one. It requires board admin access, stricter than the boards:read scope used elsewhere. See Versioning for what "legacy" means in this API.

Endpoints

MethodPathDescription
GET/api/auditlog/:boardIdGet the audit trail for a board

Audit Log Entry Object

{
  "_id": "60d5ec49f1a2c8b1f8e4e1a1",
  "boardId": "60d5ec49f1a2c8b1f8e4e1b1",
  "actorUser": "507f1f77bcf86cd799439011",
  "action": "memberChange",
  "details": {
    "memberEmail": "[email protected]",
    "positions": ["board member"]
  },
  "createdVia": "web",
  "createdAt": "2025-06-01T10:00:00.000Z",
  "updatedAt": "2025-06-01T10:00:00.000Z"
}

Fields

FieldTypeDescription
_idstringOpaque entry ID
boardIdstring | nullThe board this entry belongs to. Absent for a small number of system-level events (e.g. WebSocket connection events)
actorUserstring | nullUser who performed the action. Absent for system-initiated or unauthenticated events
actionstringType of action performed — see values below
detailsobjectAction-specific metadata; shape varies by action
createdViastring | null"web" or "agent", when known
createdAtstringISO-8601 timestamp
updatedAtstringISO-8601 timestamp

Retention

Audit log entries are automatically deleted 365 days after createdAt.

Action Values

CategoryValues
MembershipownershipTransfer, memberDelete, memberLeft, memberChange
DocumentsdocumentVersionDelete, documentDelete, documentView
MeetingsmeetingCreate, meetingUpdate, meetingStatusChange, meetingDelete, meetingGuestSlotsViewed, meetingGuestVoteCast
Action itemsactionItemCreate, actionItemUpdate, actionItemStatusChange, actionItemDelete
Reports & dashboardsreportStatusChange, dashboardReviewStatusChange, dashboardAccessGranted, dashboardAccessRevoked, dashboardOwnershipTransferred
Unregistered board usersboardUserUnregisteredCreate, boardUserUnregisteredUpdate, boardUserUnregisteredArchive, boardUserUnregisteredUnarchive, boardUserUnregisteredScrubPii, boardUserUnregisteredDismissBounceFlag
Security / connectionwsConnect, wsDisconnect, wsRoomJoin, wsRoomLeave, wsRoomAccessDenied, wsAuthFailure, wsRateLimit
Account & billinguserHardPurge, billingPlanOverride

details is validated per action value and carries fields specific to that event (for example, memberChange carries memberEmail and positions).

Get Audit Trail for a Board

GET /api/auditlog/:boardId

Returns the full audit trail for a board, sorted in ascending chronological order (oldest first, ties on createdAt broken by _id).

Path Parameters

ParameterTypeDescription
boardIdstringThe board ID

Response

Returns a bare array of audit log entry objects — this endpoint does not use the standard { "data": ... } envelope:

[
  /* array of audit log entry objects, oldest first */
]

Errors

CodeStatusWhen
UNAUTHENTICATED401Missing or invalid token
FORBIDDEN403Caller is not a board admin
RESOURCE_NOT_FOUND404Board does not exist

On this page