How Integrations Work
The integration system operates on two levels:- Global Integrations: You first create an integration at the organization level. This establishes the connection to the external service (e.g., authenticating with Slack or defining a webhook endpoint).
- Agent Notifications: You then “bind” these integrations to specific agents. This allows you to control exactly which agents use which integrations and what events trigger them.
Event System
Asteroid Agents emit events throughout their execution lifecycle. You can subscribe to these events to trigger notifications or external workflows.Event Types
Execution Status Events
| Event Type | Description |
|---|---|
ExecutionStarted | Triggered when an agent begins a new execution. |
ExecutionCompleted | Triggered when an agent successfully completes its task. |
ExecutionFailed | Triggered when an agent encounters an error and fails. |
ExecutionCancelled | Triggered when an execution is cancelled (by user, timeout, or max steps). |
ExecutionPaused | Triggered when an agent pauses (e.g., waiting for user input). |
ExecutionResumed | Triggered when a paused agent resumes execution. |
ExecutionAwaitingConfirmation | Triggered when an agent needs confirmation before proceeding (e.g., “Human in the Loop”). |
Action Events
| Event Type | Description |
|---|---|
ExecutionActionStarted | Triggered when an action within execution has started. |
ExecutionActionFailed | Triggered when an action within execution fails. |
Execution Details Events
| Event Type | Description |
|---|---|
ExecutionStepStarted | Triggered when a step in the execution starts. |
ExecutionWorkflowUpdated | Triggered when the execution workflow is updated. |
UserMessageReceived | Triggered when the agent receives a message from the user. |
Filtering & Rules
When adding a notification to an agent, you can control exactly when it triggers using our powerful filtering system.Subscription Modes
- Subscribe to All: Receive notifications for every event type, including any new event types added in the future.
- Custom Rules: Select specific event types and optionally add detailed filters.
Advanced Filtering
For each event type, you can add one or more Field Filters.- OR Logic: If you add multiple filters to a single event type, the notification will trigger if ANY of the filters match.
- Example: A filter for
Outcome equals 'failure'andOutcome equals 'cancelled'effectively means “Notify me if the outcome is failure OR cancelled”.
- Example: A filter for
- “Notify me on
ExecutionCompletedonly if the result contains ‘Urgent’.” - “Notify me on
ExecutionFailedorExecutionCancelled.”
Example Use Case
Most users only want to be notified about critical events—when something goes wrong or when specific outcomes occur.Scenario: Order Processing Agent
Sarah manages an e-commerce agent that processes customer orders hourly. She doesn’t need notifications for every successful order, but she does want alerts for failures and payment issues. Her Configuration:- Creates a Slack integration connected to
#operations-alerts - Adds it to her agent with filters:
- Event:
ExecutionFailed- No filters (all failures) - Event:
ExecutionCompleted- Filter:outcomeequalspayment_declined
- Event:
- Successful orders (
outcome: success) → No notification - Failed executions → Slack alert: ”🔴 Execution Failed - Payment gateway timeout”
- Declined payments → Slack alert: ”🟡 Execution Completed - Payment declined for Order #12345”

