strip-hands.jpg

monday webhooks

Don't call us, we'll call you

What are monday webhooks?

monday webhooks allow you to subscribe to events on events on your boards, and get notified by an HTTP post request to a specified URL with the event information as a payload. No need to pull data from the API over and over to detect changes anymore, just subscribe, and we'll notify your app.

How to create a new webhook?

On your board, click the "integrations" icon, and look for the "webhooks" app while adding a new integrations. Find the integration that send your the event you want subscribe to, and then you'll be asked to specify the URL for your webhook.

How to verify a webhook URL?

The URL you specified should be of course controlled by your app, and we're verifying that by a verification request we're making while you're listing a new URL. We'll send a json POST body containing a challenge field, which is a random token that we expect you to return as a challenge field of your response json body to that request.

How the events will look like?

Each webhook request post request will have a type field and an event field in its body. The type field tells you what the events stands for, and the event contains the payload with the event's data. These are the events that we curently support:

create_pulse - a new pulse (row) was created in a board


{
  event: {
    app: 'monday',
    boardId: 224535,
    groupColor: '#579bfc',
    groupId: '224132',
    groupName: 'This Week',
    pulseId: 983678,
    pulseName: 'A new task',
    userId: 103892,
    type: 'create_pulse'
  }
}

update_column_value - a pulse column has been updated (changedAt is sent in unix epoch format)


{
  event: {
    app: 'monday',
    boardId: 224535,
    changedAt: 1564587898.712963,
    columnId: 'status',
    columnType: 'color',
    pulseId: 983678,
    userId: 103892,
    type: 'update_column_value',
    value: {
      label: {
        index: 1,
        text: 'Done',
        style: {
          border: '#00B461',
          color: '#00c875',
          var_name: 'green-shadow'
        }
      }
    },
    previousValue: {
      label: {
        index: 2,
        text: 'Stuck',
        style: {
          border: '#CE3048',
          color: '#e2445c',
          var_name: 'red-shadow'
        }
      }
    }
  }
}

create_update - when an update is sent on a pulse


{
  event: {
    app: 'monday',
    boardId: 224535,
    body: '<p>update text</p>',
    pulseId: 118613172,
    textBody: 'update text',
    userId: 103892
    updateId: 1733892,
    type: 'create_update'
  }
}