ackDB

Cross-entity event search

Search events across all entities. Filterable by source, event type, and date range. Returns events with entity names. Use for cross-entity queries like 'all Stripe refunds in February' without per-entity N+1 calls.

get/api/v1/ackdb/entities/events

Request

  • Base URL
    http://localhost:3009
  • Auth
    HTTP bearer

Query parameters

sourcestring

Filter by source type (e.g. slack, stripe).

eventTypestring

Filter by event type (e.g. stripe_charge.refunded, slack_message).

sincestring date-time

Filter events after this ISO date.

untilstring date-time

Filter events before this ISO date.

limitinteger

Maximum number of events to return (max 200).

offsetinteger

Number of events to skip for pagination. Cannot be combined with cursor (400).

cursorstring

Crawl mode: pass an EMPTY value to start, then each response's pagination.nextCursor. Pages are keyset-read by event id (oldest id first) so any depth costs the same — use this to walk a whole source. pagination becomes { limit, nextCursor, total? } (total on the first page only, nextCursor null when done). Omit for the default timestamp-desc / offset paging.

graphRootstring

Root entity id or domain.

graphScope'parents' | 'children' | 'connected'

Required when graphRoot is supplied.

graphMaxDepthinteger
graphAsOfstring date-time
graphRelationshipTypestring[]
personIdstring

Filter events stamped with this human; merged IDs resolve to their survivor.

ownership'person' | 'company'

person selects sole-person events; company selects company-associated events; omit for both. Filters before pagination/counts. Personal ownership conflicts with entityId/company graph.

Response

Paginated list of events across entities. Default mode: pagination: { total, limit, offset }. Crawl mode (cursor given): pagination: { limit, nextCursor, total? }.

Example response

{
  "data": [
    {
      "id": "01HXYZ123456789ABCDEFGH",
      "source": "slack",
      "eventType": "message",
      "summary": "Customer asked about pricing in #acme-corp"
    }
  ],
  "pagination": {
    "total": 150,
    "limit": 50,
    "totalIsLowerBound": true
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.