Integrations API
List integrations
GET /api/integrationsReturns all configured integrations for your account. Sensitive config values (Slack bot tokens, Jira API tokens) are masked in the response.
Response 200 OK
[
{
"id": "7d4e2f1a-8b9c-4d5e-a6f7-0b1c2d3e4f50",
"type": "slack",
"config": { "webhookUrl": "https://hooks.slack.com/services/T.../B.../xxx" },
"enabled": true,
"createdAt": "2025-01-20T14:00:00Z"
}
]Create or update integration
POST /api/integrationsCreates a new integration or updates an existing one (one integration per type).
Request body
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | "slack" or "jira" |
config | object | Yes | Integration-specific configuration |
enabled | boolean | No | Enable or disable (default true) |
Slack config (incoming webhook)
{
"type": "slack",
"config": {
"webhookUrl": "https://hooks.slack.com/services/T.../B.../xxx"
}
}Jira config
{
"type": "jira",
"config": {
"instanceUrl": "https://your-org.atlassian.net",
"projectKey": "SEC",
"email": "[email protected]",
"apiToken": "your-jira-api-token"
}
}Response 200 OK
Delete integration
DELETE /api/integrations/:typeRemoves the integration of the given type (slack or jira).
Response 200 OK
{ "deleted": true }Test integration
POST /api/integrations/testSends a test message through the integration to verify connectivity. Pass the same type and config body as when creating the integration.
Response 200 OK
{
"ok": true
}A failed test returns 400 with an error description.