Chilkat Online Tools

C / Zoom API / React to a chat message

Back to Collection Items

#include <C_CkHttp.h>
#include <C_CkHttpRequest.h>
#include <C_CkHttpResponse.h>

void ChilkatSample(void)
    {
    HCkHttp http;
    BOOL success;
    HCkHttpRequest req;
    HCkHttpResponse resp;
    int respStatusCode;

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    http = CkHttp_Create();

    req = CkHttpRequest_Create();
    CkHttpRequest_putHttpVerb(req,"PATCH");
    CkHttpRequest_putPath(req,"/v2/chat/users/:userId/messages/:messageId/emoji_reactions");
    CkHttpRequest_putContentType(req,"multipart/form-data");
    CkHttpRequest_AddParam(req,"to_contact","culpa reprehenderit");

    CkHttpRequest_AddParam(req,"to_channel","culpa reprehenderitlaborum ut");

    CkHttpRequest_AddParam(req,"action","culpa reprehenderitlaborum utremove");

    CkHttpRequest_AddParam(req,"emoji","culpa reprehenderitlaborum utremovequis magna aliqua Ut");

    CkHttpRequest_AddHeader(req,"Authorization","Bearer <access_token>");

    resp = CkHttp_SynchronousRequest(http,"api.zoom.us",443,TRUE,req);
    if (CkHttp_getLastMethodSuccess(http) == FALSE) {
        printf("%s\n",CkHttp_lastErrorText(http));
        CkHttp_Dispose(http);
        CkHttpRequest_Dispose(req);
        return;
    }

    respStatusCode = CkHttpResponse_getStatusCode(resp);
    printf("Response Status Code = %d\n",respStatusCode);
    if (respStatusCode != 204) {
        printf("Response Header:\n");
        printf("%s\n",CkHttpResponse_header(resp));
        printf("Response Body:\n");
        printf("%s\n",CkHttpResponse_bodyStr(resp));
        printf("Failed.\n");
        CkHttpResponse_Dispose(resp);
        CkHttp_Dispose(http);
        CkHttpRequest_Dispose(req);
        return;
    }

    CkHttpResponse_Dispose(resp);
    printf("Success.\n");


    CkHttp_Dispose(http);
    CkHttpRequest_Dispose(req);

    }

Curl Command

curl -X PATCH
	-H "Authorization: Bearer <access_token>"
	-H "Content-Type: multipart/form-data"
	--form 'to_contact=culpa reprehenderit'
	--form 'to_channel=culpa reprehenderitlaborum ut'
	--form 'action=culpa reprehenderitlaborum utremove'
	--form 'emoji=culpa reprehenderitlaborum utremovequis magna aliqua Ut'
https://api.zoom.us/v2/chat/users/:userId/messages/:messageId/emoji_reactions

Postman Collection Item JSON

{
  "name": "React to a chat message",
  "request": {
    "auth": {
      "type": "oauth2"
    },
    "method": "PATCH",
    "header": [
      {
        "key": "Content-Type",
        "value": "multipart/form-data"
      }
    ],
    "body": {
      "mode": "formdata",
      "formdata": [
        {
          "key": "to_contact",
          "value": "culpa reprehenderit",
          "description": "The email address of the contact to whom the message was sent. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
          "type": "text"
        },
        {
          "key": "to_channel",
          "value": "laborum ut",
          "description": "The channel's ID where you sent the message. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
          "type": "text"
        },
        {
          "key": "action",
          "value": "remove",
          "description": "The action to perform with the message:\n* `add` — Add an emoji reaction.\n* `remove` — Remove an emoji reaction. (This can only be one of add,remove)",
          "type": "text"
        },
        {
          "key": "emoji",
          "value": "quis magna aliqua Ut",
          "description": "The emoji's unicode value, in `UTF-32` format. For more information, read the [Emojipedia](https://emojipedia.org/emoji-modifier-sequence/) documentation.",
          "type": "text"
        }
      ]
    },
    "url": {
      "raw": "{{baseUrl}}/chat/users/:userId/messages/:messageId/emoji_reactions",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "chat",
        "users",
        ":userId",
        "messages",
        ":messageId",
        "emoji_reactions"
      ],
      "variable": [
        {
          "key": "userId",
          "value": "quis officia in reprehenderit",
          "description": "(Required) The user's unique ID."
        },
        {
          "key": "messageId",
          "value": "quis officia in reprehenderit",
          "description": "(Required) The message's unique ID."
        }
      ]
    },
    "description": "Use this API to react (add or remove) to a chat message with an emoji.\n\nFor an **account-level** [OAuth app](https://marketplace.zoom.us/docs/guides/getting-started/app-types/create-oauth-app), this API can only be used on behalf of a user who is assigned with a [role](https://support.zoom.us/hc/en-us/articles/115001078646-Using-role-management#:~:text=Each%20user%20in%20a%20Zoom,owner%2C%20administrator%2C%20or%20member.&text=Role%2Dbased%20access%20control%20enables,needs%20to%20view%20or%20edit.) that has the **Edit** permission for **Chat Messages**.\n\n**Scopes:** `chat_message:write`, `chat_message:write:admin`<br>**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Medium`"
  },
  "response": [
    {
      "name": "**HTTP Status Code:** `204`<br>\nMessage reacted successfully.",
      "originalRequest": {
        "method": "PATCH",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "body": {
          "mode": "formdata",
          "formdata": [
            {
              "key": "to_contact",
              "value": "culpa reprehenderit",
              "description": "The email address of the contact to whom the message was sent. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "to_channel",
              "value": "laborum ut",
              "description": "The channel's ID where you sent the message. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "action",
              "value": "remove",
              "description": "The action to perform with the message:\n* `add` — Add an emoji reaction.\n* `remove` — Remove an emoji reaction. (This can only be one of add,remove)",
              "type": "text"
            },
            {
              "key": "emoji",
              "value": "quis magna aliqua Ut",
              "description": "The emoji's unicode value, in `UTF-32` format. For more information, read the [Emojipedia](https://emojipedia.org/emoji-modifier-sequence/) documentation.",
              "type": "text"
            }
          ]
        },
        "url": {
          "raw": "{{baseUrl}}/chat/users/:userId/messages/:messageId/emoji_reactions",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "chat",
            "users",
            ":userId",
            "messages",
            ":messageId",
            "emoji_reactions"
          ],
          "variable": [
            {
              "key": "userId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The user's unique ID."
            },
            {
              "key": "messageId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The message's unique ID."
            }
          ]
        }
      },
      "status": "No Content",
      "code": 204,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "**HTTP Status Code:** `400`<br>\nBad request<br>\n**Error Code:** `300`<br>\nMessage does not exist: $messageId <br> Must provide either contact or channel parameter.\n",
      "originalRequest": {
        "method": "PATCH",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "body": {
          "mode": "formdata",
          "formdata": [
            {
              "key": "to_contact",
              "value": "culpa reprehenderit",
              "description": "The email address of the contact to whom the message was sent. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "to_channel",
              "value": "laborum ut",
              "description": "The channel's ID where you sent the message. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "action",
              "value": "remove",
              "description": "The action to perform with the message:\n* `add` — Add an emoji reaction.\n* `remove` — Remove an emoji reaction. (This can only be one of add,remove)",
              "type": "text"
            },
            {
              "key": "emoji",
              "value": "quis magna aliqua Ut",
              "description": "The emoji's unicode value, in `UTF-32` format. For more information, read the [Emojipedia](https://emojipedia.org/emoji-modifier-sequence/) documentation.",
              "type": "text"
            }
          ]
        },
        "url": {
          "raw": "{{baseUrl}}/chat/users/:userId/messages/:messageId/emoji_reactions",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "chat",
            "users",
            ":userId",
            "messages",
            ":messageId",
            "emoji_reactions"
          ],
          "variable": [
            {
              "key": "userId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The user's unique ID."
            },
            {
              "key": "messageId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The message's unique ID."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "**HTTP Status Code:** `404`<br>\n**Error Code**: `1001`<br>\nUser does not exist: $to_contact.<br>\n**Error Code**: `4130`<br>\nChannel does not exist: $to_channel.",
      "originalRequest": {
        "method": "PATCH",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "body": {
          "mode": "formdata",
          "formdata": [
            {
              "key": "to_contact",
              "value": "culpa reprehenderit",
              "description": "The email address of the contact to whom the message was sent. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "to_channel",
              "value": "laborum ut",
              "description": "The channel's ID where you sent the message. You must provide either the `to_contact` or the `to_channel` parameter in the API request.\n\nTo get a channel's ID, use the [List User's Channels API](https://marketplace.zoom.us/docs/api-reference/zoom-api/chat-channels/getchannels).",
              "type": "text"
            },
            {
              "key": "action",
              "value": "remove",
              "description": "The action to perform with the message:\n* `add` — Add an emoji reaction.\n* `remove` — Remove an emoji reaction. (This can only be one of add,remove)",
              "type": "text"
            },
            {
              "key": "emoji",
              "value": "quis magna aliqua Ut",
              "description": "The emoji's unicode value, in `UTF-32` format. For more information, read the [Emojipedia](https://emojipedia.org/emoji-modifier-sequence/) documentation.",
              "type": "text"
            }
          ]
        },
        "url": {
          "raw": "{{baseUrl}}/chat/users/:userId/messages/:messageId/emoji_reactions",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "chat",
            "users",
            ":userId",
            "messages",
            ":messageId",
            "emoji_reactions"
          ],
          "variable": [
            {
              "key": "userId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The user's unique ID."
            },
            {
              "key": "messageId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The message's unique ID."
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}