Slack Handle

A SlackHandle reserves a Slack workspace user-group @handle for Firetiger and tracks the provisioned user_group_id. It is pure identity — it does not carry which agents receive mentions. Routing lives on SlackAgentMentioned triggers that reference the handle via configuration.slack_agent_mentioned.slack_handle.

A handle with no referencing trigger is a legitimate intermediate state: the @-name is reserved in Slack, but @-mentions route nothing until a trigger is created.

Parent: a Slack Connection. Handles are unique within a workspace, not globally — the nesting expresses that. The server validates that the parent Connection is CONNECTION_TYPE_SLACK.

Field Type Behavior Description
name string OUTPUT_ONLY Resource name (connections/{connection}/slack-handles/{slack_handle})
handle string REQUIRED, immutable @-mention token without the leading @. Server strips a leading @ on input and lowercases. Unique within the workspace.
user_group_id string OUTPUT_ONLY Slack user-group ID. Populated after provisioning (usergroups.create) succeeds. Stable across the resource’s lifetime.
create_time timestamp OUTPUT_ONLY When the handle was created
update_time timestamp OUTPUT_ONLY When the handle was last modified
delete_time timestamp OUTPUT_ONLY When the handle was soft-deleted (null if active)

Example

{
  "name": "connections/slack-prod/slack-handles/on-call",
  "handle": "on-call",
  "userGroupId": "S0123ABCDEF",
  "createTime": "2026-04-23T08:28:56Z",
  "updateTime": "2026-04-23T08:28:56Z"
}

This site uses Just the Docs, a documentation theme for Jekyll.