Zum Inhalt
Für Agenten

chat_add_reaction

Add Chat Reaction

Markdown Tools als JSON

Beschreibung

Adds an emoji reaction to a chat message. Idempotent — retrying the same (message, user, emoji) triple returns already_existed: true instead of erroring. A single user may stack multiple different emojis on the same message.

Response carries the full current reaction list, so you don't need a follow-up chat_get_messages. Channel membership is required; admin/employer do NOT override (same rule as chat_send_message).

Zugriff

Zugriffsprofil: basic. Module: chat. Die Freigabe im Profil ersetzt keine Account-, Workspace- oder Rollenberechtigung.

Parameter

Name Typ Pflicht Beschreibung
account_id string Ja Account prefix ID (e.g., acct_abc123).
channel_id string Ja Channel prefix ID (e.g., chan_xyz789) — must be a channel you can post in.
message_id string Ja Message prefix ID (e.g., msg_abc123) of the target. Both roots and replies accept reactions.
emoji string Ja Unicode emoji (e.g., 🔥, 👍, ✅). Do not escape the string — send literal Unicode, not \u1f525 sequences. Up to 32 chars so modifier sequences (skin tone, ZWJ) still fit.

Eingabeschema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Account prefix ID (e.g., acct_abc123)."
    },
    "channel_id": {
      "type": "string",
      "description": "Channel prefix ID (e.g., chan_xyz789) — must be a channel you can post in."
    },
    "message_id": {
      "type": "string",
      "description": "Message prefix ID (e.g., msg_abc123) of the target. Both roots and replies accept reactions."
    },
    "emoji": {
      "type": "string",
      "minLength": 1,
      "maxLength": 32,
      "description": "Unicode emoji (e.g., 🔥, 👍, ✅). Do not escape the string — send literal Unicode, not \\u1f525 sequences. Up to 32 chars so modifier sequences (skin tone, ZWJ) still fit."
    }
  },
  "required": [
    "account_id",
    "channel_id",
    "message_id",
    "emoji"
  ],
  "type": "object"
}

Ausgabeschema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "message_id": {
      "type": "string"
    },
    "emoji": {
      "type": "string"
    },
    "already_existed": {
      "type": "boolean",
      "description": "True when the reaction already existed before this call — idempotent retry confirmation."
    },
    "reactions": {
      "type": "array",
      "description": "Complete current reaction list for the message after this call, ordered by created_at ASC.",
      "items": {
        "type": "object",
        "properties": {
          "emoji": {
            "type": "string"
          },
          "user": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "handle": {
                "type": "string"
              },
              "name": {
                "type": "string"
              }
            }
          },
          "created_at": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "emoji",
          "user",
          "created_at"
        ]
      }
    }
  },
  "required": [
    "message_id",
    "emoji",
    "already_existed",
    "reactions"
  ],
  "type": "object"
}
Seiten