Using Triggers
When events occur in connected apps (like new Slack messages or GitHub commits), triggers automatically send the event data to your application.
Each event is delivered as a structured payload to your webhook endpoint (via webhooks or WebSockets), enabling your applications or AI agents to respond proactively.
Prerequisites
Before proceeding, ensure you’ve created an auth config and established a connection to an app (e.g., Slack, GitHub).
Creating a trigger
You can create triggers using either the Composio dashboard or programmatically via the SDK.
Dashboard
SDK
To create triggers through the dashboard:
- Navigate to the Auth Configs page
- Select the auth config
- Click “Add Trigger” and navigate to “Active Triggers” tab to fetch the trigger ID.
Some triggers require additional configuration. The dashboard will prompt you for any required fields during setup.

Subscribing to triggers
Webhooks
The recommended way to subscribe to triggers is through webhooks. Configure your webhook URL in the Event & Trigger settings.
Use a publicly accessible URL where Composio can send event payloads. This endpoint should be able to process incoming POST requests containing the trigger data.
Local development: Use ngrok or webhook.site to expose your local server to the internet for testing.
Implement your webhook handler:
Below are some examples of how to listen in on trigger events for a FastAPI/Next.js application.
Prototyping with trigger subscriptions
During development, you can subscribe to triggers directly through the SDK without setting up webhooks.
You can subscribe to multiple trigger events by configuring the filters. When you specify multiple filters, ALL of them must match for the trigger to be subscribed to.
Trigger payload types
To see what data you’ll receive in your webhook handler, inspect the trigger’s payload:
Type-safe trigger handling (TypeScript)
For better type safety and developer experience in TypeScript, you can define specific payload types and use the TriggerEvent<T>
interface:
This approach provides:
- IntelliSense support for trigger payload fields
- Compile-time error checking for typos and invalid field access
- Better documentation through TypeScript types
- Improved maintainability of trigger handling code
Managing triggers
Enable/disable triggers
You can pause triggers temporarily without deleting them.
Dashboard
SDK
- Go to the Auth Config page
- Select your auth config
- Navigate to “Active Triggers”
- Disable/Enable the trigger

Troubleshooting
View detailed trigger logs and debug issues on the Composio dashboard.