Consumer API

Events

GET /events (scope: events:read) returns access attempts and remote-unlock activity for your organization - the same event model that powers the dashboard's Event Log page.

curl -H "Authorization: Bearer ves_live_example" \
  "https://your-deployment.example.com/api/consumer/v1/events?accessPointId=<id>"

Every query parameter is optional and only ever narrows the results - none can widen them past your own organization's events, since the base query is always scoped to your key's organization first.

Filters

ParameterDescription
accessPointId, locationIdRestrict to one access point or every access point under one location.
typeComma-separated event types (e.g. ACCESS_GRANTED,ACCESS_DENIED). Unrecognized values are ignored, not rejected.
allowedgranted or denied.
robloxUserIdExact match on the Roblox user ID.
reasonExact match on the event's reason code (e.g. ACCESS_DENIED_OUTSIDE_SCHEDULE).
scopeUNIVERSE, SERVER, or PLAYER - restricts to remote-unlock events issued with that command scope.
qFree-text search across the event ID, Roblox user ID, access point/location name, reason, and server job ID. An exact event UUID goes straight to a single-row lookup.
dateFrom, dateToISO 8601 timestamps, capped to a 366-day span combined - a wider request is silently narrowed, not rejected.

Each returned event includes its location/access-point names, the dashboard requester (if any), and a summary of any related remote command - the same shape the dashboard's Event Log page uses, just without needing a second request per row.