Overview
Webhooks allow you to receive real-time notifications when important events occur in your Manus tasks. When you register a webhook, Manus will send HTTP POST requests to your specified callback URL whenever these events are triggered.How Webhook Events Work
When you create and execute tasks, two key lifecycle events can trigger webhook deliveries:- Task Creation: Immediately after a task is successfully created via the API
- Task State Change: When a task completes, or requires user input
Setting Up Webhooks
Manage Webhooks
Navigate to the API Integration settings to create or manage webhooks.
- Respond with HTTP status code 200
- Accept POST requests with JSON payloads
- Respond within 10 seconds
Event Types and Payloads
task_created
Event
When it triggers: Immediately after a new task is successfully created.
Why it’s useful: Allows you to track task creation in your own systems, send confirmation emails, or update dashboards in real-time.
Payload Schema:
Field | Type | Required | Description |
---|---|---|---|
event_id | string | Yes | Unique identifier for this webhook event |
event_type | string | Yes | Always "task_created" for this event |
task_id | string | Yes | Unique identifier for the created task |
task_title | string | Yes | Human-readable title of the task |
task_url | string | Yes | Direct URL to view the task in Manus app |
task_stopped
Event
When it triggers: When a task reaches a stopping point - either because it completed successfully or needs user input to proceed.
Why it’s useful: Essential for knowing when your tasks finish and what the outcome was. Enables automated workflows based on task completion.
Payload Schema:
Field | Type | Required | Description |
---|---|---|---|
event_id | string | Yes | Unique identifier for this webhook event |
event_type | string | Yes | Always "task_stopped" for this event |
task_id | string | Yes | Unique identifier for the task |
task_title | string | Yes | Human-readable title of the task |
task_url | string | Yes | Direct URL to view the task in Manus app |
message | string | Yes | Status message from the task execution |
attachments | array | No | List of files generated by the task |
stop_reason | string | Yes | Why the task stopped: "finish" or "ask" |
"finish"
: Task completed successfully and has final results"ask"
: Task paused and requires user input or confirmation to continue
Field | Type | Required | Description |
---|---|---|---|
file_name | string | Yes | Name of the generated file |
url | string | Yes | Secure download URL for the file |
size_bytes | integer | Yes | File size in bytes |
Integration Examples
Slack Integration
Post task updates directly to Slack channels:Custom Dashboard Updates
Update your internal dashboards in real-time:Troubleshooting
Common Issues
- Webhook not receiving events: Verify your URL is accessible and returns 200 status
- SSL/TLS errors: Ensure your endpoint uses valid HTTPS certificates
- Timeout errors: Make sure your endpoint responds within 10 seconds
Testing Your Webhook
You can test your webhook endpoint using tools like:- webhook.site for quick testing
- ngrok for local development
- Postman or curl for manual testing