---
title: "Get fired trigger events"
method: GET
path: "/v1/analytics/trigger-instances"
tags: ["Analytics"]
---

# Get fired trigger events

`GET /v1/analytics/trigger-instances`

Unified fired-trigger-event read. Omit `triggerInstanceId` to LIST fired instances (newest first) under `{ data, pagination }` — the audit log of every inbound fire, whether from the API (`source: "api"`) or an integration webhook (`source: "integration"`). Each row links the fire to the automations it matched and the runs it started (`automationRunIds[]` → `GET /v1/automations/runs?automationRunId=`). Filter with `?triggerEventId=`. Pass `?triggerInstanceId=` to fetch ONE — returns `{ data: [row] }` (no `pagination`), `404 EVENT_NOT_FOUND` on an unknown / cross-brand id.

## Query parameters

- `triggerInstanceId` string
- `triggerEventId` string
- `limit` integer
- `cursor` string

## Response `200`

A page of fired trigger-event instances (list mode), or `{ data: [row] }` (detail mode).

- EventsListResponse
  - `data` object[], required
    - `triggerInstanceId` string, required
    - `source` 'api' | 'integration', required
    - `provider` string
    - `triggerEventId` string
    - `state` string, required
    - `matchedAutomationIds` string[], required
    - `automationRunIds` string[], required
    - `rejectionReason` string
    - `attempts` integer, required
    - `receivedAt` string, date-time, required
    - `processedAt` string, date-time
  - `pagination` object
    - `limit` integer, required
    - `cursor` string, nullable, required
    - `hasMore` boolean, required

## Other responses

- `400` — The request body or query string was invalid (unknown key, wrong type, or missing required field). Strict schemas reject unknown keys — including `brandId`, which is always resolved from the API key.
- `401` — The API key was missing, invalid, or revoked.
- `403` — The caller does not have the required `automations` permission.
- `404` — Fired trigger event not found in the API-key brand. Cross-brand ids intentionally surface as 404 (never 403) so the API does not leak cross-brand existence.
- `429` — The request hit the rolling rate limit window.
- `500` — Unexpected internal error.

---

[API](https://skmtc.net/brew/apis/brew-public-api-v1.md) · [All operations](https://skmtc.net/brew/apis/brew-public-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/brew/brew-public-api-v1/revisions/db96cfedc6c5/schema)
