List Slack channels
List the project's connected Slack channels — used to resolve an alert rule's notification target.
List the project's connected Slack channels — used to resolve an alert rule's notification target.
Populate a channel picker, or validate an alert rule's --slack-channel before saving.
Authorization
bearerSdkKey Pass an admin SDK key as Authorization: Bearer sdk_admin_…. Mint via POST /api/admin/keys with type: "admin".
In: header
Header Parameters
Project the request operates on. Optional — defaults to the project the SDK key belongs to; pass it only to scope a multi-project key (the generated client sets it once from its configuration, so per-call callers never thread it).
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://shipeasy.ai/api/admin/slack/channels"{
"connected": true,
"channels": [
{
"id": "C0123",
"name": "alerts"
},
{
"id": "C0456",
"name": "general"
}
]
}{
"error": "Malformed request (bad JSON, missing project scope).",
"code": "BAD_REQUEST"
}{
"error": "Missing or invalid admin SDK key.",
"code": "UNAUTHORIZED"
}{
"error": "Key is valid but not allowed to act on this project.",
"code": "FORBIDDEN"
}{
"error": "The resource does not exist or is not visible to the caller.",
"code": "NOT_FOUND"
}{
"error": "A resource with this name already exists in the project.",
"code": "ALREADY_EXISTS"
}{
"error": "The request body failed structural (schema) validation.",
"code": "VALIDATION"
}Raise an attention notification
Raise a 'needs your attention' bell notification. Create-only and idempotent on dedupeKey — re-raising with the same key updates the one card instead of…
List alert rules
Returns every alert rule in the project (not paginated). Each rule carries its bound metricId, the denormalised metricName (or null if the metric was…