Overview
Resource Event Triggers automatically start workflows when data changes in your Datastores, Filestores, Knowledge Bases, or Vaults. Build reactive systems that respond instantly to creates, updates, and deletes without polling or manual intervention.Supported Resources
Event triggers work with these resource collections:- Structured Datastores - Collection-level and item-level triggers
- Unstructured Datastores - Collection-level triggers only
- Filestores - Collection-level and file-level triggers
- Knowledge Bases - Collection-level and file-level triggers
- Vaults - Collection-level triggers only
Trigger Events
onCreate
Fires when a new item or file is added to a collection. Available at:- ✅ Collection level (monitors all creates)
- ❌ Item/file level (not supported - items don’t exist before creation)
onEdit
Fires when an existing item or file is modified. Available at:- ✅ Collection level (monitors all edits)
- ✅ Item/file level (monitors specific items)
onDelete
Fires when an item or file is removed. Available at:- ✅ Collection level (monitors all deletions)
- ✅ Item/file level (monitors specific items)
Trigger Levels
Collection-Level Triggers
Monitor all items in a collection automatically. Configuration:- Set via collection management UI in the Resources section
- Applies to every item/file in the collection
Item/File-Level Triggers
Monitor specific items or files individually. Available for:- 🚧 Structured Datastores (individual rows) - Coming soon
- ✅ Filestores (individual files)
- ✅ Knowledge Bases (individual files)
- ❌ Unstructured Datastores (collection-level only)
- ❌ Vaults (collection-level only)
- Set via UI when viewing/editing items or files
- Set via
triggerUrlsparameter when creating or updating items/files via API - Only fires for that particular item/file
Trigger Structure
Triggers use a consistent format across all resource types:event(required) - onCreate, onEdit, or onDeleteurl(required) - Webhook endpoint to call (typically a Pinkfish workflow API trigger)apiKey(required) - API key for authenticating with the endpointtriggerLevel(optional) - “collection” or “item” (auto-detected if not specified)
Trigger Payloads
Datastore Triggers (Structured & Unstructured)
onCreate/onDelete events:Filestorage Triggers
onCreate/onEdit/onDelete events:signedUrl provides access to file content and is valid for 7 days.
Vault Triggers
Same structure as datastore triggers, withcollectionType: "vault" and isSecret: true.
Note: Vault triggers are collection-level only - individual secret items cannot have triggers.
Setting Up Triggers
Collection-Level (via UI)
- Navigate to Resources → [Your Collection]
- Click “Settings” or “Edit Collection”
- Add trigger URLs in the “Event Triggers” section
- Select events (onCreate, onEdit, onDelete)
- Provide webhook URL and API key
- Save changes
Item/File-Level (via API)
When creating items:Rate Limiting
onEdit Event Rate Limiting
To prevent infinite loops and excessive executions:- Limit: Maximum 2 trigger executions per minute per item/file
- Window: 60-second rolling window
- Applies to: onEdit events only
- Behavior: Excess triggers are dropped (not queued)
- Workflow A edits item → triggers Workflow B
- Workflow B edits same item → triggers Workflow A
- Loop continues indefinitely
triggerChanges: false in update operations within triggered workflows to prevent recursive triggers.
No Rate Limiting
onCreate and onDelete events have no rate limiting since they can’t create loops.Testing Triggers
Test your triggers before production deployment:Test Collection Triggers
Test Item Triggers
API Reference
Create Item with Triggers
Create File with Triggers
triggerUrls field.
Update Triggers on Existing Item
Set Collection-Level Triggers
Test Triggers
Collection-level:Limitations
onCreate Restrictions
- Cannot be set at item/file level (only collection level)
- Items must exist before triggers can be attached to them
- Use collection-level onCreate for new item monitoring
Rate Limiting
- onEdit events: 2 executions per minute per item/file
- onCreate/onDelete: No rate limits
Execution
- Triggers execute asynchronously (non-blocking)
- Failed triggers don’t retry automatically (implement retry in your workflow)
- Trigger logs retained for debugging and monitoring
Related Documentation
- Structured Datastore
- Unstructured Datastore
- Filestorage
- Vault
- Knowledge Base
- Workflow Triggers - Overview of all trigger types

