Webhooks

Webhooks are available in the instance you would like to be notified when actions are taken within the system.

Hooks are available either via a standard POST request to a URL which is specified, or can be setup to notify an AWS SNS topic which has been setup. When an AWS SNS topic is used, an access key, corresponding access secret key and region (that the SNS topic has been setup in) should be specified, which will be used to publish messages to the SNS topic.

Hooks are setup in a way that will not delay or impact users updating information, etc. Generally hooks are sent information immediately when records are altered, however there may be instances where it will take several seconds or more before a hook is triggered based on system load and other demands.

Note that given records can be updated across a number of ways, there may be instances where a hook is triggered when related information is updated – such as a change to users preferences might trigger a hook to be sent, or changes to someones permissions might trigger hooks to be sent for group memberships. For this reason the systems which process this information should setup in a way that they will take this into account.

Troubleshooting

You will need to ensure the URL or SNS topic has been setup correctly by testing messages are sent to it properly - generally this can be done by adding/editing/removing an entry in the appropriate section specified (eg. editing a person in the system if a hook handles people).

How are permissions applied?

Webhooks are triggered regardless of particular permissions users might have. They are only able to be setup by users whom have system-level administrator access - that is, have administrator access to the top-level groups setup on the system.

Contents

Web hooks are sent in JSON format, and generally contain the following;

  • Timestamp the change was made (UTC timezone)
  • A list of fields which were updated
  • The modified content
  • A copy of the current record (eg. a persons details)