Inbound webhooks are a standard way of connecting external applications to RESULTS.com in order to send data without having to deal with the complexity of full API access. As Webhooks operate over TLS/SSL, they are just as secure as the regular API. Initially, Webhooks have been created for Goals, but these can be extended to include Connect, Meetings and Tasks in the near future. To enable Webhooks for your organization, please contact firstname.lastname@example.org.
Creating a new Webhook
For Results Admins the new Webhooks section will be located under the 'More' section of the Navigation menu.
- Click '+ New Webhook' to load the New Webhook overlay.
- Complete the New Webhook form by entering the following information:
- Goal - Select the Goal that you want to update via the Webhook
- Name - Name of your Webhook, it will default to the Goal name
- Description - Add a description for your Webhook so that it can be identified in the future.Define the source system.
- Click the 'Create' button to create the Target URL which will be used to update the Goal. The created Webhook will appear like this (see below). Copy the URL and use it in your Source System to update the Goal.
Goal Data which can be updated via the Webhook
|badThreshold||Decimal value at which this threshold turns red|
|date||Y||Date this recorded data is for|
|goodThreshold||Decimal value at which this threshold turns green|
|value||Y||Decimal value to record, eg: 0.01 or 500000 or -10|
Note that the threshold values must conform to whether or not the goal is maximize or minimize. For a maximize goal (greater is better), goodThreshold >= badThreshold. For a minimize goal (lesser is better), goodThreshold <= badThreshold. If the data isn't valid, the API will respond with a 400 BAD REQUEST
API Response Codes
|200||OK||The request was successfully processed|
|201||CREATED||Used for posting data, this indicates that the data was successfully posted and added to the goal|
|400||BAD REQUEST||The data supplied was not in the correct format. Error response will indicate specific failure|
|401||UNAUTHORIZED||The goal was found, but the key supplied within the URL could not be validated|
|403||FORBIDDEN||The goal was found and the key was valid, but access is being prevented for some reason which may not be revealed.|
|404||NOT FOUND||The goal was not found. Either it doesn't exist in the user's organization or the user doesn't have permission to access the goal.|
|405||METHOD NOT ALLOWED||Attempting to use an HTTP method on an endpoint that doesn't support it.|
|408||REQUEST TIMEOUT||The request took too long to process an is being aborted. The client may send the request again.|
|410||GONE||The goal exists but has been marked as deleted and is not accepting new data.|
|429||TOO MANY REQUESTS||Either your IP address or the goal has hit a rate limit and the API has throttled your access. Wait and try again later.|
|500||INTERNAL SERVER ERROR||The server ran into an unexpected error processing the request.|
|503||SERVICE UNAVAILABLE||The service is temporarily unavailable (eg: during an upgrade); the client should retry later.|