Skip to content

Slack 連携

Slack 連携を設定すると、Slack から AIエージェントを実行し、その結果を Slack のチャンネルやダイレクトメッセージで受け取れます。

連携は2段階です。まず Slack ワークスペースと Codatum のワークスペースを接続し、 次に各ユーザーが自分の Slack ユーザーと Codatum アカウントを紐付けます。 紐付けによって Slack 上の操作が Codatum のユーザーの権限で実行されるため、 どちらも到達可能性の変更として記録します。

Slack から実行したターンの結果の送出は agent_session.send_slack に記録されます。

イベント一覧

イベントリソース説明
slack.connectslack_connectionSlack ワークスペースが接続された
slack.change_agent_enabledslack_connectionSlack からのAIエージェント実行が有効化・無効化された
slack.disconnectslack_connectionSlack ワークスペースの接続が解除された
slack.link_userslack_user_linkSlack ユーザーが Codatum アカウントに連携された
slack.unlink_userslack_user_linkSlack ユーザーの連携が解除された

イベント詳細

slack.connect 準備中

Slack ワークスペースと Codatum のワークスペースの接続を記録します。

フィールド
event.codeslack.connect
scope.typeworkspace
resource.typeslack_connection
references(なし)
query(なし)
outbound(なし)
change接続時の設定
grant(なし)
extra接続された Slack ワークスペース

change

接続直後の、Slack からAIエージェントを実行できるかどうかの設定が入ります。

名前モード必須説明
agent_enabledbool必須接続時の設定値

extra

接続された Slack ワークスペースの識別子が入ります。

名前必須説明
slack_team_idstring必須Slack ワークスペースの識別子

サンプル

json
{
  "event": {
    "code": "slack.connect",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_connection",
    "uid": "63e1be654aa70ad689601c70",
    "name": "Acme",
    "path": "slack_connection/63e1be654aa70ad689601c70",
    "parts": [
      {
        "type": "slack_connection",
        "uid": "63e1be654aa70ad689601c70",
        "name": "Acme"
      }
    ],
    ...
  },
  "change": {
    "fields": [
      {
        "name": "agent_enabled",
        "new": false
      }
    ]
  },
  "extra": {
    "slack_team_id": "T012ABC"
  },
  ...
}

slack.change_agent_enabled 準備中

Slack からAIエージェントを実行できるかどうかの変更を記録します。

フィールド
event.codeslack.change_agent_enabled
scope.typeworkspace
resource.typeslack_connection
references(なし)
query(なし)
outbound(なし)
changeagent_enabled
grant(なし)
extra(なし)

change

名前モード必須説明
agent_enabledbool必須変更前後の設定値

サンプル

有効化
json
{
  "event": {
    "code": "slack.change_agent_enabled",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_connection",
    "uid": "63e1be654aa70ad689601c70",
    "name": "Acme",
    "path": "slack_connection/63e1be654aa70ad689601c70",
    "parts": [
      {
        "type": "slack_connection",
        "uid": "63e1be654aa70ad689601c70",
        "name": "Acme"
      }
    ],
    ...
  },
  "change": {
    "fields": [
      {
        "name": "agent_enabled",
        "old": false,
        "new": true
      }
    ]
  },
  ...
}
無効化
json
{
  "event": {
    "code": "slack.change_agent_enabled",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_connection",
    "uid": "63e1be654aa70ad689601c70",
    "name": "Acme",
    "path": "slack_connection/63e1be654aa70ad689601c70",
    "parts": [
      {
        "type": "slack_connection",
        "uid": "63e1be654aa70ad689601c70",
        "name": "Acme"
      }
    ],
    ...
  },
  "change": {
    "fields": [
      {
        "name": "agent_enabled",
        "old": true,
        "new": false
      }
    ]
  },
  ...
}

slack.disconnect 準備中

Slack ワークスペースと Codatum のワークスペースの接続の解除を記録します。

フィールド
event.codeslack.disconnect
scope.typeworkspace
resource.typeslack_connection
references(なし)
query(なし)
outbound(なし)
change(なし)
grant(なし)
extra(なし)

サンプル

json
{
  "event": {
    "code": "slack.disconnect",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_connection",
    "uid": "63e1be654aa70ad689601c70",
    "name": "Acme",
    "path": "slack_connection/63e1be654aa70ad689601c70",
    "parts": [
      {
        "type": "slack_connection",
        "uid": "63e1be654aa70ad689601c70",
        "name": "Acme"
      }
    ],
    ...
  },
  ...
}

Slack ユーザーと Codatum アカウントの紐付けを記録します。紐付け先のアカウントは操作者自身です。

フィールド
event.codeslack.link_user
scope.typeworkspace
resource.typeslack_user_link
references(なし)
query(なし)
outbound(なし)
change(なし)
grant(なし)
extra連携された Slack ユーザー

連携された Slack ワークスペースとユーザーの識別子が入ります。

名前必須説明
slack_team_idstring必須Slack ワークスペースの識別子
slack_user_idstring必須Slack ユーザーの識別子
sensitivity: pii
json
{
  "event": {
    "code": "slack.link_user",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_user_link",
    "uid": "63e1be654aa70ad689601c80",
    "name": null,
    "path": "slack_user_link/63e1be654aa70ad689601c80",
    "parts": [
      {
        "type": "slack_user_link",
        "uid": "63e1be654aa70ad689601c80",
        "name": null
      }
    ],
    ...
  },
  "extra": {
    "slack_team_id": "T012ABC",
    "slack_user_id": "U056DEF"
  },
  ...
}

Slack ユーザーと Codatum アカウントの紐付けの解除を記録します。

フィールド
event.codeslack.unlink_user
scope.typeworkspace
resource.typeslack_user_link
references(なし)
query(なし)
outbound(なし)
change(なし)
grant(なし)
extra連携が解除された Slack ユーザー

連携が解除された Slack ワークスペースとユーザーの識別子が入ります。

名前必須説明
slack_team_idstring必須Slack ワークスペースの識別子
slack_user_idstring必須Slack ユーザーの識別子
sensitivity: pii
json
{
  "event": {
    "code": "slack.unlink_user",
    ...
  },
  "scope": {
    "type": "workspace",
    ...
  },
  "resource": {
    "type": "slack_user_link",
    "uid": "63e1be654aa70ad689601c80",
    "name": null,
    "path": "slack_user_link/63e1be654aa70ad689601c80",
    "parts": [
      {
        "type": "slack_user_link",
        "uid": "63e1be654aa70ad689601c80",
        "name": null
      }
    ],
    ...
  },
  "extra": {
    "slack_team_id": "T012ABC",
    "slack_user_id": "U056DEF"
  },
  ...
}

Codatum Audit Events 監査ログイベントカタログ