Webhook 负载
本文档记录了 Coolify 发送到您的 Webhook 通知端点 的所有事件的 JSON 负载结构。
所有事件均以 HTTP POST 请求形式发送,并带有 Content-Type: application/json 头。每个负载至少包含以下字段:
| 字段 | 类型 | 描述 |
|---|---|---|
success | boolean | 成功事件为 true,失败/告警事件为 false |
event | string | 机器可读的事件标识符 |
message | string | 人工可读的事件描述 |
应用
deployment_success
当应用部署成功完成时发送。
{
"success": true,
"event": "deployment_success",
"message": "New version successfully deployed",
"application_name": "my-app",
"application_uuid": "...",
"deployment_uuid": "...",
"deployment_url": "...",
"project": "...",
"environment": "...",
"fqdn": "..."
}Pull Request 预览
对于 PR 预览部署,将省略 fqdn 字段,并包含以下字段:
{
"pull_request_id": 123,
"preview_fqdn": "..."
}deployment_failed
当应用部署失败时发送。
{
"success": false,
"event": "deployment_failed",
"message": "Deployment failed",
"application_name": "my-app",
"application_uuid": "...",
"deployment_uuid": "...",
"deployment_url": "...",
"project": "...",
"environment": "...",
"fqdn": "..."
}结构与 deployment_success 相同,仅 "success": false。PR 预览字段的适用方式相同。
status_changed
当应用意外停止时发送(非手动停止)。
{
"success": false,
"event": "status_changed",
"message": "Application stopped",
"application_name": "my-app",
"application_uuid": "...",
"project": "...",
"environment": "...",
"fqdn": "...",
"url": "..."
}数据库备份
backup_success
当数据库备份成功完成时发送。
{
"success": true,
"event": "backup_success",
"message": "Database backup successful",
"database_name": "...",
"database_uuid": "...",
"database_type": "...",
"frequency": "...",
"url": "..."
}backup_failed
当数据库备份失败时发送。
{
"success": false,
"event": "backup_failed",
"message": "Database backup failed",
"database_name": "...",
"database_uuid": "...",
"database_type": "...",
"frequency": "...",
"error_output": "...",
"url": "..."
}backup_success_with_s3_warning
当本地备份成功但上传到 S3 失败时发送。
{
"success": true,
"event": "backup_success_with_s3_warning",
"message": "Database backup succeeded locally, S3 upload failed",
"database_name": "...",
"database_uuid": "...",
"database_type": "...",
"frequency": "...",
"s3_error": "...",
"s3_storage_url": "...",
"url": "..."
}仅当 S3 存储 URL 可用时,才会包含 s3_storage_url 字段。
定时任务
task_success
当定时任务成功完成时发送。
{
"success": true,
"event": "task_success",
"message": "Scheduled task succeeded",
"task_name": "...",
"task_uuid": "...",
"output": "...",
"application_uuid": "...",
"url": "..."
}task_failed
当定时任务失败时发送。
{
"success": false,
"event": "task_failed",
"message": "Scheduled task failed",
"task_name": "...",
"task_uuid": "...",
"output": "...",
"application_uuid": "...",
"url": "..."
}应用级任务会包含 application_uuid。对于服务级任务,则包含 service_uuid。url 仅在可用时存在。
Docker 清理
docker_cleanup_success
当 Docker 清理任务成功完成时发送。
{
"success": true,
"event": "docker_cleanup_success",
"message": "Docker cleanup job succeeded",
"server_name": "...",
"server_uuid": "...",
"cleanup_message": "...",
"url": "..."
}docker_cleanup_failed
当 Docker 清理任务失败时发送。
{
"success": false,
"event": "docker_cleanup_failed",
"message": "Docker cleanup job failed",
"server_name": "...",
"server_uuid": "...",
"error_message": "...",
"url": "..."
}服务器
server_reachable
当之前无法访问的服务器重新变为可访问时发送。
{
"success": true,
"event": "server_reachable",
"message": "Server revived",
"server_name": "...",
"server_uuid": "...",
"url": "..."
}server_unreachable
当 Coolify 无法访问某台服务器时发送。
{
"success": false,
"event": "server_unreachable",
"message": "Server unreachable",
"server_name": "...",
"server_uuid": "...",
"url": "..."
}high_disk_usage
当服务器的磁盘使用率超过配置的阈值时发送。
{
"success": false,
"event": "high_disk_usage",
"message": "High disk usage detected",
"server_name": "...",
"server_uuid": "...",
"disk_usage": 85,
"threshold": 80,
"url": "..."
}disk_usage 和 threshold 为整数百分比。
server_patch_check
当检测到服务器上有可用的系统补丁时发送。
{
"success": false,
"event": "server_patch_check",
"message": "Server patches available",
"server_name": "...",
"server_uuid": "...",
"total_updates": 12,
"os_id": "ubuntu",
"package_manager": "apt",
"updates": [...],
"critical_packages_count": 2,
"url": "..."
}错误变体
如果补丁检查本身失败,事件将变为 server_patch_check_error,并包含 "error": "..." 字段,而不包含更新字段。
traefik_version_outdated
当一台或多台服务器运行过时的 Traefik 代理版本时发送。
{
"success": false,
"event": "traefik_version_outdated",
"message": "Traefik proxy outdated",
"affected_servers_count": 1,
"servers": [
{
"name": "...",
"uuid": "...",
"current_version": "v3.1.0",
"latest_version": "v3.1.4",
"update_type": "patch_update",
"upgrade_target": "v3.2",
"newer_branch_target": "...",
"newer_branch_latest": "..."
}
]
}| 字段 | 描述 |
|---|---|
update_type | patch_update(补丁更新)或 minor_upgrade(次要版本升级) |
upgrade_target | 目标次要版本 — 仅 minor_upgrade 时存在 |
newer_branch_target / newer_branch_latest | 当有更新的重大/次要分支可用时存在 |
容器
container_stopped
当容器意外停止时发送(非手动停止操作)。
{
"success": false,
"event": "container_stopped",
"message": "Resource stopped unexpectedly",
"container_name": "...",
"server_name": "...",
"server_uuid": "...",
"url": "..."
}container_restarted
当 Coolify 自动重启容器时发送。
{
"success": true,
"event": "container_restarted",
"message": "Resource restarted automatically",
"container_name": "...",
"server_name": "...",
"server_uuid": "...",
"url": "..."
}url 仅在可用时存在。
测试
test
当您在 Coolify 仪表板中点击 发送测试通知 时发送。
{
"success": true,
"event": "test",
"message": "This is a test webhook notification from Coolify.",
"url": "..."
}