Event Structure
All Flatfile events follow a consistent structure. Optional fields may be included depending on the event’s Domain (workbook-level events, for instance, won’t have a sheetId)Listening and Reacting to Events
To respond to these events, you’ll need to create a Listener that subscribes to the specific events your application needs to handle.Job Events
Job events are triggered when background tasks and operations change state.job:created
Description
Triggered when a new job is first created. Some jobs will enter an optional
planning state at this time. A job with ‘immediate’ set to true will skip the
planning step and transition directly to ‘ready.‘
Payload
Context
job:ready
Description
Triggered when a job is ready for execution by your listener. Either the job
has a complete plan of work or the job is configured to not need a plan. This
is the only event most job implementations will care about. Once a ready job
is acknowledged by a listener, it transitions into an executing state.
Payload
Context
Usage Example
job:scheduled
Description
Triggered when a job is scheduled to run at a future time
Payload
Context
job:updated
Description
Triggered when a job is updated. For example, when a listener updates the
state or progress of the job. The event will emit many times as the listener
incrementally completes work and updates the job.
Payload
Context
job:completed
Description
Triggered when a job has completed successfully
Payload
Context
job:outcome-acknowledged
Description
Triggered to trigger workflow actions after the user has acknowledged that the
job has completed or failed. Background jobs will skip this step.
Payload
Context
job:parts-completed
Description
Triggered when all parts of a multi-part job have completed processing
Payload
Context
job:failed
Description
Triggered when a job fails
Payload
Context
job:deleted
Description
Triggered when a job is deleted
Context
Program Events
Program events are triggered when mapping programs and transformations change state.program:created
Description
Triggered when a new mapping program is created
Payload
Context
program:updated
Description
Triggered when a mapping program is updated
Payload
Context
program:recomputing
Description
Triggered when a mapping program begins recomputing its transformations
Payload
Context
program:recomputed
Description
Triggered when a mapping program has finished recomputing its transformations
Payload
Context
File Events
File events are triggered when files are uploaded, processed, or modified.file:created
Description
Triggered when a file upload begins or a new file is created
Context
file:updated
Description
Triggered when a file is updated. For example, when a file has been extracted
into a workbook
Context
Payload
file:deleted
Description
Triggered when a file is deleted
Context
file:expired
Description
Triggered when a file is expired
Context
Record Events
Record events are triggered when data records are created, updated, or deleted.records:created
Description
Triggered when new records are added to a sheet
Payload
Context
records:updated
A note on
commit:created
vs records:updated
You might think you want to listen to records:updated
for data processing, but commit:created
is the recommended choice for most automation.A commit is like a “git commit” but for data - a versioned snapshot of all changes that occurred together in a single operation. This provides complete transaction context and better performance when processing multiple record changes.Flatfile’s own Plugins (Record Hooks, Constraints, Autocast, etc.) all use commit:created
. Reserve records:updated
only for real-time per-record feedback scenarios.Description
Triggered when existing records are modified
Payload
records:deleted
Description
Triggered when records are deleted from a sheet
Payload
Sheet Events
Sheet events are triggered when sheets are created, modified, or when sheet-level operations occur.sheet:calculation-updated
Description
Triggered when sheet calculations or formulas are updated
Payload
Context
sheet:counts-updated
Description
Triggered when record counts for a sheet are updated
Payload
Context
sheet:created
Description
Triggered when a new sheet is created
Payload
sheet:updated
Description
Triggered when a sheet Blueprint or configuration is modified
Payload
sheet:deleted
Description
Triggered when a sheet is deleted
Payload
Workbook Events
Workbook events are triggered for workbook-level operations and changes.workbook:created
Description
Triggered when a new workbook is created
Payload
workbook:updated
Description
Triggered when a workbook is modified
Payload
workbook:deleted
Description
Triggered when a workbook is deleted
Payload
workbook:expired
Description
Triggered when a workbook expires
Payload
Space Events
Space (Project) events are triggered for project lifecycle changes.space:created
Description
Triggered when a new project (space) is created
Payload
space:updated
Description
Triggered when a project is modified
Payload
space:deleted
Description
Triggered when a space is deleted
Context
space:expired
Description
Triggered when a space is expired
Context
space:archived
Description
Triggered when a space is archived
Context
space:guestAdded
Description
Triggered when a guest is added
Context
space:guestRemoved
Description
Triggered when a guest’s access is revoked from a space
Context
space:unarchived
Description
Triggered when a space is unarchived and restored to active status
Payload
Context
Environment Events
Environment events are triggered for organization-level changes.environment:autobuild-created
Description
Triggered when an autobuild configuration is created for an environment
Payload
Context
environment:created
Description
Triggered when a new environment is created
Payload
environment:updated
Description
Triggered when an environment is modified
Payload
environment:deleted
Description
Triggered when an environment is deleted
Payload
Action Events
Action events are triggered when custom actions are created, updated, or deleted.action:created
Description
Triggered when a new custom action is created
Payload
Context
action:updated
Description
Triggered when a custom action is updated
Payload
Context
action:deleted
Description
Triggered when a custom action is deleted
Payload
Context
Document Events
Document events are triggered when documents are created, updated, or deleted within workbooks.document:created
Description
Triggered when a document is created on a workbook
Context
document:updated
Description
Triggered when a document is updated on a workbook
Context
document:deleted
Description
Triggered when a document is deleted on a workbook
Context
Commit Events
Commit events are triggered when data changes are made to records.commit:created
Description
Triggered when a cell in a record is created or updated
Payload
commit:updated
Description
Triggered when commit metadata or details are updated
Payload
Context
commit:completed
Description
Triggered when a commit has completed (only when trackChanges is enabled)
Payload
layer:created
Description
Triggered when a new layer is created within a commit
Payload
Snapshot Events
Snapshot events are triggered when snapshots of sheet data are created.snapshot:created
Description
Triggered when a snapshot is created of a sheet
Payload
Agent Events
Agent events are triggered when agents are created, updated, or deleted.agent:created
Description
Triggered when a new agent is deployed
Payload
agent:updated
Description
Triggered when an agent is updated
Payload
agent:deleted
Description
Triggered when an agent is deleted
Payload
Secret Events
Secret events are triggered when secrets are managed.secret:created
Description
Triggered when a new secret is created
Payload
secret:updated
Description
Triggered when a secret is updated
Payload
secret:deleted
Description
Triggered when a secret is deleted
Payload
Data Clip Events
Data clip events are triggered when data clips are managed.data-clip:collaborator-updated
Description
Triggered when collaborators are added or removed from a data clip
Payload
Context
data-clip:created
Description
Triggered when a new data clip is created
Payload
data-clip:updated
Description
Triggered when a data clip’s details are updated
Payload
data-clip:deleted
Description
Triggered when a data clip is deleted
Payload
data-clip:resolutions-created
Description
Triggered when new conflict resolutions are created for a data clip
Payload
Context
data-clip:resolutions-refreshed
Description
Triggered when conflict resolutions are refreshed or recalculated for a data clip
Payload
Context
data-clip:resolutions-updated
Description
Triggered when existing conflict resolutions are updated for a data clip
Payload
Context
Canvas Events
Canvas events are triggered when canvases are created, updated, or deleted.canvas:created
Description
Triggered when a new canvas is created
Payload
Context
canvas:updated
Description
Triggered when a canvas is updated
Payload
Context
canvas:deleted
Description
Triggered when a canvas is deleted
Payload
Context
Canvas Area Events
Canvas area events are triggered when canvas areas are created, updated, or deleted.canvas-area:created
Description
Triggered when a new canvas area is created
Payload
Context
canvas-area:updated
Description
Triggered when a canvas area is updated
Payload
Context
canvas-area:deleted
Description
Triggered when a canvas area is deleted
Payload
Context
Thread Events
Thread events are triggered when AI conversation threads are created, updated, or deleted.thread:created
Description
Triggered when a new AI conversation thread is created
Payload
Context
thread:updated
Description
Triggered when an AI conversation thread is updated
Payload
Context
thread:deleted
Description
Triggered when an AI conversation thread is deleted
Payload
Context
Cron Events
** Deployed Agents Required **Cron events are only created for environments that have deployed agents subscribed to the specific cron topics. These events will not fire in localhost development environments unless you have deployed agents running in that environment.
cron:5-minutes
Description
Triggered every 5 minutes for system maintenance and periodic tasks
Payload
Context
cron:hourly
Description
Triggered every hour for scheduled maintenance and cleanup tasks
Payload
Context
cron:daily
Description
Triggered once daily for daily maintenance and reporting tasks
Payload
Context
cron:weekly
Description
Triggered once weekly for weekly cleanup and archival tasks
Payload
Context