Create a webhook outcome

A webhook outcome let you automatically notify another system when a checklist is completed. The webhook outcome will automatically perform a HTTP request to a URL.

To add a webhook outcome add an outcome to the template or checklist and select Webhook from the outcome options.

Now select the request method you want, you can select between POST, PUT, GET and DELETE.

You also add the URL you want to be requested. This URL must be able to return a successful response from a request with the method you select.

Click the Add URL button to add the webhook.

All webhook passes a JSON body to the requested URL if you choose POST or PUT. You can easily test a request by adding a RequestBin URL as a Webhook and complete a checklist. This will show you the exact request in details.

 {
  "id": "12345",
  "name": "Write a blog post (Checklist #1)",
  "description": null,
  "createdAt": "2017-10-30T11:13:36Z",
  "updatedAt": "2017-10-30T11:13:36Z",
  "status": {
    "status": "completed",
    "completedBy": {
      "id": "123456",
      "name": "Frej Norling",
      "email": "[email protected]",
      "avatar": "https://s.gravatar.com/avatar/912988ea3142c65dee354b3689fd6949?s=100&r=r&d=identicon",
      "membership": "active",
      "roles": {
        "team": "admin"
      }
    },
    "completedAt": "2017-10-30T11:13:38Z",
    "comment": null,
    "result": null
  },
  "properties": {
    "taskDisplay": "blank",
    "taskOrder": "unordered",
    "taskCompletionRequirement": "any"
  },
  "stats": {
    "items": 3,
    "tasks": 3,
    "tasksCompleted": 0,
    "members": 1,
    "outcomes": 1
  },
  "outcomes": [{
    "id": "123456",
    "action": "webhook",
    "type": "background",
    "items": [{
      "url": "https://requestb.in/1miingx1",
      "method": "POST"
    }]
  }],
  "duedate": null,
  "members": [{
    "id": "123456",
    "name": "Frej Norling",
    "email": "[email protected]",
    "avatar": "https://s.gravatar.com/avatar/912988ea3142c65dee354b3689fd6949?s=100&r=r&d=identicon",
    "membership": "active",
    "roles": {
      "team": "admin"
    },
    "status": "assigned",
    "stats": {
      "tasks": 0
    }
  }],
  "team": {
    "id": "123",
    "idCreatedBy": "123456",
    "name": "Demo",
    "description": "",
    "createdAt": "2015-10-28T20:50:14Z",
    "updatedAt": "2017-10-30T11:13:36Z",
    "plan": "Premium",
    "permissions": {
      "members": "anyone",
      "templates": "anyone"
    },
    "role": "admin",
    "membership": "active",
    "stats": {
      "templates": 9,
      "triggers": 1,
      "inProgress": 1,
      "checklists": 1,
      "members": 6,
      "activeMembers": 1,
      "invited": 5,
      "admins": 2
    }
  },
  "template": {
    "id": "1234",
    "name": "Write a blog post",
    "description": null,
    "createdAt": "2017-04-12T18:33:09Z",
    "updatedAt": "2017-10-30T11:13:36Z",
    "permissions": {
      "view": "anyone",
      "edit": "inherit"
    }
  },
  "items": [{
    "id": "1",
    "position": 3,
    "title": "Spellcheck",
    "description": null,
    "type": "task",
    "results": [],
    "members": [],
    "status": {
      "status": "uncompleted"
    }
  }, {
    "id": "2",
    "position": 2,
    "title": "Write content",
    "description": "",
    "type": "task",
    "results": [],
    "members": [],
    "status": {
      "status": "uncompleted"
    }
  }, {
    "id": "3",
    "position": 1,
    "title": "Choose a good title",
    "description": null,
    "type": "task",
    "results": [],
    "members": [],
    "status": {
      "status": "uncompleted"
    }
  }]
}