Using Zoom's Incoming Webhook Chatbot


The Incoming Webhook app allows you to send messages from your external services, such as Amazon CloudWatch, directly to any Zoom chat channel. Use the chat app in any channel to generate a unique endpoint and verification token. With these credentials, you can send messages to your Zoom chat channel through HTTP POST requests.

This article covers:

Prerequisites for using the Incoming Webhook chatbot

How to add and configure Incoming Webhook

Add from the Zoom App Marketplace

You will need to have admin permissions on your Zoom account to add and configure the Incoming Webhook Chatbot. 

  1. Sign in to the Zoom App Marketplace as the account administrator.
  2. In the top right of the window, search for Incoming Webhook.
  3. In your search results, find the Incoming Webhook app and click it.
    Note: If the app is not pre-approved, contact your Zoom admin to approve this app for your account. Learn more about admin app approvals
  4. Click Add.
  5. Confirm the permissions the app requires, then click Authorize.
    The Incoming Webhook app is now added.

Configure the Incoming Webhook Chatbot

  1. Sign in to the Zoom desktop client.
  2. Click the Team Chat tab.
  3. Under Apps , find and select Incoming Webhook, or select a chat channel from above that you would like to receive messages in.
  4. Enter one of the following commands to make a new connection:
    • /inc connect <connectionName: Creates a connection and responds with a 1:1 chat message with the following details:
      • endpoint
      • verification token
      • example cURL requests
    • /inc connect -s <connectionName: Creates a secure connection with signature and responds with a 1:1 chat message with the following details:
      • endpoint
      • secret
      • example cURL requests

You can use this information to send your POST requests.
Note: You must complete these steps for every channel you want to have the Incoming Webhook chatbot send messages to.

How to send messages to Zoom Team Chat

After you have created your connection, you can then start sending POST requests to the integration’s endpoint. Ensure that your POST requests include verification token to the Authorization header.
Note: The endpoint only accepts POST requests.

To test your connection, you can use Terminal or an open git-bash (or an equivalent that supports cURL commands). You can copy the example cURL from the initial 1:1 chat message from the Incoming Webhook Chatbot and send the cURL request. Once sent, you should see the test message sent in the specified channel. A successful test will respond with 200 OK.

For a connection with signature, the signature must be created in the following way:

base64UrlEncode(HMACSHA256({format}&${timestamp}&${input message}, secret))

format: message | fields | list | full | upload | img

timestamp: millisecond, expire in half an hour

As an example:

echo -n "{format}&{timestamp}&{input message}" | openssl dgst -sha256 -hmac {secret} -binary | base64

When sending messages using the Incoming Webhook Chatbot, you will have 6 options for the type and complexity of your messages:

How to use the Incoming Webhook Chatbot

Available commands

Examples of how to send messages with an image

How to remove the Incoming Webhook Chatbot

  1. Sign in to the Zoom App Marketplace as the account administrator.
  2. In the top-right corner of the page, click Manage.
  3. In the navigation menu, click Added Apps.
  4. Next to the Incoming WebHook app, click Remove.
  5. Confirm the dialogue and click Remove.
    Note: Performing this step will also remove all active connections in Zoom Team Chat.

For additional help, submit a request to Zoom Support.