Event catalog
The event types automations can trigger on and webhooks deliver, generated from the event definitions.
Generated from Synap-core/backend@c31e261ab (main): docs/reference/events.json. Do not edit this page; see scripts/generate-reference.mjs.
Every change on a pod is recorded as an event. This page lists the event types an automation trigger can name, which webhooks deliver and the event log returns.
Automation trigger patterns accept an exact type (entity.create.completed), an action wildcard (entity.create.*)
or a subject wildcard (entity.*). Filter keys are the fields a trigger can match on; the pod's trigger picker shows
them.
The backend also generates table-level event names ({table}.{action}.{phase}, for example
entities.create.requested) for schema documentation and admin introspection. Automation triggers do not match
those strings: use the types below.
29 event types in 16 domains.
Catalog
Entity
| Event type | Name | Description | Filter keys |
|---|---|---|---|
entity.create.completed | Entity created | Fires after any entity is successfully created. | profileSlug |
entity.update.completed | Entity updated | Fires after any entity field or property is updated. | profileSlug, changedKeys, changed.<fieldName>, previous.<fieldName>, <fieldName> |
entity.transition.completed | Status changed | Fires when a thing's lifecycle status moves (the kind's own, or a role's), through the one moveStatus door. | lifecycleProfile, profileSlug, role, property, from, to, fromCategory, category, actorKind |
entity.delete.completed | Entity deleted | Fires after an entity is permanently deleted. | profileSlug |
Focus sessions
| Event type | Name | Description | Filter keys |
|---|---|---|---|
focus_session.stage_changed.completed | Playbook stage changed | Fires when a focus session advances to a different playbook stage. | toStage, fromStage, playbookId |
Tracks
| Event type | Name | Description | Filter keys |
|---|---|---|---|
track.stage_changed.completed | Track stage changed | Fires when a project's track (a method it runs) moves to a different stage. | toStage, fromStage, playbookId, projectId, trackId |
Proposals
| Event type | Name | Description | Filter keys |
|---|---|---|---|
proposal.created.completed | Proposal created | A new AI proposal is pending review. | proposalStatus, targetType, changeType |
proposal.approved.completed | Proposal approved | An AI proposal was approved and applied. | proposalStatus, targetType |
proposal.rejected.completed | Proposal rejected | An AI proposal was rejected. | proposalStatus, targetType |
Relations
| Event type | Name | Description | Filter keys |
|---|---|---|---|
relation.create.completed | Relation created | Two entities were linked. | relationType |
relation.delete.completed | Relation deleted | A relation between entities was removed. | relationType |
Links
| Event type | Name | Description | Filter keys |
|---|---|---|---|
link.create.completed | Dependency declared | A unit of work was marked as blocked by (or replacing) another. | linkType, fromType, toType |
link.delete.completed | Dependency removed | A blocked-by (or replaces) edge was removed. | linkType, fromType, toType |
Documents
| Event type | Name | Description | Filter keys |
|---|---|---|---|
document.create.completed | Document created | Fires after a document is created. | profileSlug |
document.update.completed | Document updated | Fires after a document is updated. | profileSlug |
Capture
| Event type | Name | Description | Filter keys |
|---|---|---|---|
capture.complete.completed | Capture completed | A capture finished processing. | profileSlug |
Commands
| Event type | Name | Description | Filter keys |
|---|---|---|---|
command.execute.completed | Command executed | Fires after a command finishes execution. | commandSlug |
Connectors
| Event type | Name | Description | Filter keys |
|---|---|---|---|
connector_sync.complete.completed | Connector synced | A connection finished a sync run — once per connection per run. Data: provider, connectionId, syncStatus ('success' | 'error'), kinds (phase per kind), counts {fetched, created, merged, skipped}, proposalIds when the run filed an import for review. | provider, syncStatus |
Intelligence
| Event type | Name | Description | Filter keys |
|---|---|---|---|
proactive.post.completed | Proactive post | The proactive AI posted a message into your channel. | proactiveType |
Notifications
| Event type | Name | Description | Filter keys |
|---|---|---|---|
notification.created.completed | Notification created | A notification was raised. | notificationType, category |
Messaging
| Event type | Name | Description | Filter keys |
|---|---|---|---|
channel_message.created.completed | Channel message created | A new message was posted into a Synap channel. | channelId, messageRole |
external_message.received.completed | External message received | An inbound message arrived on a connected external channel. | provider, channelId |
messaging_account.created.completed | Messaging account connected | A messaging account was connected. | provider |
messaging_account.reconnection_required.completed | Messaging account needs reconnection | A messaging account requires reconnection. | provider |
messaging_account.disconnected.completed | Messaging account disconnected | A messaging account was disconnected. | provider |
Feed
| Event type | Name | Description | Filter keys |
|---|---|---|---|
feed.new_item.completed | Feed new item | A new item appeared in the intelligence feed. | feedArchetype, feedMinRelevanceScore |
Inbox
| Event type | Name | Description | Filter keys |
|---|---|---|---|
inbox_item.received.completed | Inbox item received | A new item arrived from an external integration. | sourceType |
inbox_item.analyzed.completed | Inbox item analyzed | An inbox item was analyzed by the intelligence service. | sourceType |
Identity
| Event type | Name | Description | Filter keys |
|---|---|---|---|
user.updated.completed | User updated | A user identity was updated. |
System events
Internal events that are not automation triggers.
webhooks.deliver.requested
Naming grammar
Event types follow {subject}.{action}.{phase}.
- Subjects (record changes):
entity,document,workspace,view,relation,link,tag,project,proposal,message,user,role,apiKey,skill,agent,agentRun,chatThread,template,inboxItem,sharing,workspaceMember,projectMember - Actions:
create,update,delete,archive,restore - Phases:
requested,validated,completed,denied - Subjects whose action is a domain verb:
command,external_channel,external_webhook,focus_session,hydration,inbox_item,messaging_account,notification,tool,connection_sync,track,entity_facet - Connector and system families:
external_message,channel_message,connector_sync,capture,proactive,feed - Message alias patterns:
message.received,message.received.*,message.sent,message.sent.*,message.* - Observation namespaces:
dev,ci
