Python SDK
Send alerts, fire templates and page on-call from any Python app, job or pipeline. Includes a guard() context manager that alerts when your code raises.
Copy a ready-to-run starter example for cURL, PHP/Laravel, Node.js, Python or Go. Use API keys from your dashboard, recipient UUIDs from your workspace and keep secrets outside source code.
Official clients
Two officially maintained clients wrap the same REST API: a Python SDK on PyPI and a single-binary Go CLI. Install, drop in your API key, and page on-call in two lines.
Send alerts, fire templates and page on-call from any Python app, job or pipeline. Includes a guard() context manager that alerts when your code raises.
A single static binary for shell scripts, cron jobs and CI runners. Pipe a failing command straight into an alert — no dependencies, no runtime.
Pick your stack
The same JSON contract everywhere. Drop the snippet into your project, swap in the API key from the dashboard, and you are live.
Live request
Idempotent endpoints, RFC-compliant errors and a response envelope you can log straight into your incident timeline.
Best practices
Create API keys in the dashboard, store them in environment variables or secret managers and rotate them when team access changes.
Client-facing examples use recipient_uuid values so public integrations do not depend on internal database IDs.
Include service, severity, environment and a link to your source system instead of unnecessary sensitive details.
Implementation path
Generate a key in dashboard settings and store it outside source code before testing examples.
Use a sandbox recipient first, confirm channel routing, then promote the integration to the production responder group.
Handle non-2xx responses, log failures in your source tool and avoid sending duplicate high-priority alerts.
API surface
Send alerts, manage recipients, inspect delivery — all from one REST surface secured by your API key.
| Method | Path | Purpose |
|---|---|---|
| POST | /api/v1/notifications/send | Dispatch a notification to a recipient with priority and channels. |
| GET | /api/v1/notifications/{id} | Inspect status, delivery attempts and acknowledgement state. |
| POST | /api/v1/notifications/{id}/ack | Acknowledge an incident programmatically and stop escalation. |
| GET | /api/v1/recipients | List recipients in your workspace with channel capabilities. |
| POST | /api/v1/recipients | Create a recipient with telegram_id, phone, email and routing rules. |
| PATCH | /api/v1/recipients/{uuid} | Update escalation timeouts, channel order or quiet hours. |
Create a workspace, copy any snippet from this page and replace the API key. Your first alert is one request away.