Skip to content

API

Events API

On this page

GET /workspaces/{workspace}/apps/{app}/events

  • Auth: signed-in workspace member.
  • Name: app.events
  • Request: optional search (string, max 200), name (string, max 80), subscriber (uuid), segment (string, max 80), page (integer, min 1), and per_page (10, 25, or 50, default 10). segment is an automatic segment id, such as android-users, or a custom segment id in this environment.
  • Response: the Events page. events is the current page of { id, name, subscriber, properties, at }. subscriber is { id, name, email, platform } or null. platform is ios, android, or web. properties is the object passed with the event, or null when nothing was passed. at is an ISO-8601 time. eventList has total, page, perPage, search, name, subscriber, and segment. eventNames is the recorded names in this environment, up to 100. eventSubscribers is { id, name } for people who recorded an event here, up to 100. eventSegments is { id, name } for this environment’s segments.
  • Errors: 404 when the caller is not a member, the app is in another workspace, or the app is missing. 422 when a query value is invalid or the segment is not in this environment.

POST /workspaces/{workspace}/apps/{app}/events/bulk

  • Auth: signed-in developer, admin, or owner.
  • Name: app.events.bulk
  • Request: action must be delete. ids is 1 to 500 event ids.
  • Response: redirect back. Only events in this app and active environment are deleted.
  • Errors: 403 for a viewer. 404 when the caller is not a member, the app is in another workspace, or the app is missing. 422 when the action or ids are invalid.

Recording an event is POST /api/v1/sdk/events, documented with the SDK API. The same record is POST /api/v1/public/apps/{app}/environments/{environment}/events with a workspace server key. The first open and the first click also store notification_opened and notification_clicked.

Public API

Auth is Authorization: Bearer with a workspace server API key. {environment} is development or production. A missing, unknown, expired, or revoked key is 401 INVALID_API_KEY. An app outside the workspace, or a deleted app, is 404 APP_NOT_FOUND. A key over its limit is 429 API_KEY_LIMIT_REACHED. The caller is also limited to 60 requests per minute from one IP (429 RATE_LIMIT_EXCEEDED). An unexpected failure is 500 SERVER_ERROR. Paths are /api/v1/public/apps/{app}/environments/{environment}/events.

  • GET — EVENTS_LISTED. Optional search, name, and subscriber filters.
  • GET /{event} — EVENT_FETCHED.
  • POST — 201 EVENT_RECORDED. Same body as the SDK, including automations.
  • POST /bulk — EVENTS_DELETED.