Docs

Slack Integration

POST
/v1/integrations/slack/install-url

Generate the Slack OAuth consent URL for this workspace.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

curl -X POST "https://example.com/v1/integrations/slack/install-url"
{  "url": "http://example.com"}
GET
/v1/integrations/slack/status

Return the Slack install for this workspace (if any).

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

curl -X GET "https://example.com/v1/integrations/slack/status"
{  "connected": true,  "slackTeamId": "string",  "slackTeamName": "string",  "installedByUserId": "string",  "installedAt": "string",  "notificationChannelId": "string"}
GET
/v1/integrations/slack/channels

List public Slack channels for this workspace's install. Used by the dashboard's notification-channel picker.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/integrations/slack/channels"
{  "channels": [    {      "id": "string",      "name": "string",      "isMember": true    }  ]}
PUT
/v1/integrations/slack/notification-channel

Configure which Slack channel receives ai-agent monitor reports.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X PUT "https://example.com/v1/integrations/slack/notification-channel" \  -H "Content-Type: application/json" \  -d '{    "channelId": "string"  }'
{  "notificationChannelId": "string",  "warning": "string"}
DELETE
/v1/integrations/slack/installation

Uninstall the Slack integration for this workspace. Revokes the bot token at Slack and deletes the row.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

curl -X DELETE "https://example.com/v1/integrations/slack/installation"
Empty