Overview
Today, Hostwares webhooks are one-directional and inbound: every deployed site has a unique URL that, when POSTed to, triggers a fresh deployment. This is what CI/CD pipelines, Git hosts, and automation tools use to redeploy a site without calling the REST API directly.
Looking for outboundnotifications (Slack/Discord/PagerDuty when a deploy finishes)? That's not built yet — see Outbound Notifications below for the current workaround.
Getting Your Deploy URL
Ask the AI assistant for your site's deploy webhook — it's the fastest path and requires no API key handling:
you> what's the deploy webhook for my-site?
ai> Deploy webhook for "my-site":
POST https://your-coolify-host/webhooks/deploy/abc123defOr fetch it via the REST API (see API Reference for authentication):
# Via the AI chat endpoint — same tool the assistant uses internally
POST /api/chat
{ "message": "list the deploy webhook for my-site" }Triggering a Deploy
POST to the URL with no body required — it starts a fresh deployment from your current source (GitHub branch, Docker image, etc.):
curl -X POST https://your-coolify-host/webhooks/deploy/abc123defThe site's status flips to DEPLOYING immediately; poll GET /api/sites/:id or check the dashboard to see when it's back to RUNNING.
Integration Examples
GitHub Actions — redeploy on push
# .github/workflows/deploy.yml
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- run: curl -X POST ${{ secrets.HOSTWARES_DEPLOY_WEBHOOK }}n8n / Zapier
Use an HTTP Request node with POST and your webhook URL as the target — no auth headers needed, since the URL itself is the credential. Treat it like a secret.
Outbound Notifications (Roadmap)
Push notifications when a deployment completes or fails — to Slack, Discord, PagerDuty, or a custom endpoint — aren't available yet. Until they ship, two workarounds:
- Ask the AI in an active chat session — it can report back on deployment status
- Poll
GET /api/sites/:idfrom an n8n/Zapier workflow and relay status changes to Slack/Discord yourself