Overview

Webhooks lets you easily develop push notifications. This push notification is simply a HTTP POST, that is triggered by some action in your Teamwork Projects account.

This is a feature aimed for developers who want to get data from actions (like when a new task is added or a milestone is edited) that occur on their Teamwork Projects account.

You could use Webhooks to:

  • Perform an action in a 3rd party app based on some item being completed in Teamwork Projects (e.g: When a task is completed, update a SVN client)
  • Extend Teamwork Projects using your own app where a feature is required but not part of Teamwork Projects (e.g: Send an email notification to a certain person when a task is added to your Teamwork Projects account)
  • Record who downloaded a particular file and when
  • Add Job Numbers to the start of a Project or Task when they are created. e.g: [JN10001] My new project
  • When time is logged in Teamwork Projects update an internal Dashboard of information
  • Cut down on the amount of polling of the API you need to do to see if something has changed
  • Use the FILE.CREATED event to trigger a script to download a Teamwork Projects file right in to your Dropbox/Box folder.

What if I don't want the webhook to fire sometimes?

This is a good question! If you have a webhook set up and you are testing something, you don’t want to send off hundreds of requests. You can turn the webhook off using a parameter at the end of each endpoint.

For example, I might have a webhook set up for Task.Created. A small program I have built uses the data in that webhook to put into an internal reporting system. While testing something else, I don’t want my webhooks firing false data into the reporting system, so instead, I can add fireWebhook=false at the end of my endpoint URL. This will stop the webhook firing.

Feedback

If you have any feedback or suggestions, feel free to contact us at api@teamwork.com.