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
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.‘
job:ready
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.
job:scheduled
Triggered when a job is scheduled to run at a future time
job:updated
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.
job:completed
Triggered when a job has completed successfully
job:outcome-acknowledged
Triggered to trigger workflow actions after the user has acknowledged that the
job has completed or failed. Background jobs will skip this step.
job:parts-completed
Triggered when all parts of a multi-part job have completed processing
job:failed
Triggered when a job fails
job:deleted
Triggered when a job is deleted
Program Events
Program events are triggered when mapping programs and transformations change state.program:created
Triggered when a new mapping program is created
program:updated
Triggered when a mapping program is updated
program:recomputing
Triggered when a mapping program begins recomputing its transformations
program:recomputed
Triggered when a mapping program has finished recomputing its transformations
File Events
File events are triggered when files are uploaded, processed, or modified.file:created
Triggered when a file upload begins or a new file is created
file:updated
Triggered when a file is updated. For example, when a file has been extracted
into a workbook
file:deleted
Triggered when a file is deleted
file:expired
Triggered when a file is expired
Record Events
Record events are triggered when data records are created, updated, or deleted.records:created
Triggered when new records are added to a sheet
records:updated
A note on
commit:created vs records:updatedYou 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.Triggered when existing records are modified
records:deleted
Triggered when records are deleted from a sheet
Sheet Events
Sheet events are triggered when sheets are created, modified, or when sheet-level operations occur.sheet:calculation-updated
Triggered when sheet calculations or formulas are updated
sheet:counts-updated
Triggered when record counts for a sheet are updated
sheet:created
Triggered when a new sheet is created
sheet:updated
Triggered when a sheet Blueprint or configuration is modified
sheet:deleted
Triggered when a sheet is deleted
Workbook Events
Workbook events are triggered for workbook-level operations and changes.workbook:created
Triggered when a new workbook is created
workbook:updated
Triggered when a workbook is modified
workbook:deleted
Triggered when a workbook is deleted
workbook:expired
Triggered when a workbook expires
Space Events
Space (Project) events are triggered for project lifecycle changes.space:created
Triggered when a new project (space) is created
space:updated
Triggered when a project is modified
space:deleted
Triggered when a space is deleted
space:expired
Triggered when a space is expired
space:archived
Triggered when a space is archived
space:guestAdded
Triggered when a guest is added
space:guestRemoved
Triggered when a guest’s access is revoked from a space
space:unarchived
Triggered when a space is unarchived and restored to active status
Environment Events
Environment events are triggered for organization-level changes.environment:autobuild-created
Triggered when an autobuild configuration is created for an environment
environment:created
Triggered when a new environment is created
environment:updated
Triggered when an environment is modified
environment:deleted
Triggered when an environment is deleted
Action Events
Action events are triggered when custom actions are created, updated, or deleted.action:created
Triggered when a new custom action is created
action:updated
Triggered when a custom action is updated
action:deleted
Triggered when a custom action is deleted
Document Events
Document events are triggered when documents are created, updated, or deleted within workbooks.document:created
Triggered when a document is created on a workbook
document:updated
Triggered when a document is updated on a workbook
document:deleted
Triggered when a document is deleted on a workbook
Commit Events
Commit events are triggered when data changes are made to records.commit:created
Triggered when a cell in a record is created or updated
commit:updated
Triggered when commit metadata or details are updated
commit:completed
Triggered when a commit has completed (only when trackChanges is enabled)
layer:created
Triggered when a new layer is created within a commit
Snapshot Events
Snapshot events are triggered when snapshots of sheet data are created.snapshot:created
Triggered when a snapshot is created of a sheet
Agent Events
Agent events are triggered when agents are created, updated, or deleted.agent:created
Triggered when a new agent is deployed
agent:updated
Triggered when an agent is updated
agent:deleted
Triggered when an agent is deleted
Secret Events
Secret events are triggered when secrets are managed.secret:created
Triggered when a new secret is created
secret:updated
Triggered when a secret is updated
secret:deleted
Triggered when a secret is deleted
Data Clip Events
Data clip events are triggered when data clips are managed.data-clip:collaborator-updated
Triggered when collaborators are added or removed from a data clip
data-clip:created
Triggered when a new data clip is created
data-clip:updated
Triggered when a data clip’s details are updated
data-clip:deleted
Triggered when a data clip is deleted
data-clip:resolutions-created
Triggered when new conflict resolutions are created for a data clip
data-clip:resolutions-refreshed
Triggered when conflict resolutions are refreshed or recalculated for a data clip
data-clip:resolutions-updated
Triggered when existing conflict resolutions are updated for a data clip
Canvas Events
Canvas events are triggered when canvases are created, updated, or deleted.canvas:created
Triggered when a new canvas is created
canvas:updated
Triggered when a canvas is updated
canvas:deleted
Triggered when a canvas is deleted
Canvas Area Events
Canvas area events are triggered when canvas areas are created, updated, or deleted.canvas-area:created
Triggered when a new canvas area is created
canvas-area:updated
Triggered when a canvas area is updated
canvas-area:deleted
Triggered when a canvas area is deleted
Thread Events
Thread events are triggered when AI conversation threads are created, updated, or deleted.thread:created
Triggered when a new AI conversation thread is created
thread:updated
Triggered when an AI conversation thread is updated
thread:deleted
Triggered when an AI conversation thread is deleted
Cron Events
Cron events are system events triggered at scheduled intervals for automated processes.cron:5-minutes
Triggered every 5 minutes for system maintenance and periodic tasks
cron:hourly
Triggered every hour for scheduled maintenance and cleanup tasks
cron:daily
Triggered once daily for daily maintenance and reporting tasks
cron:weekly
Triggered once weekly for weekly cleanup and archival tasks

