API Reference

Updates a bar

To ensure that the requests you're getting at your webhook endpoint are actually coming from ProductPlan, ProductPlan populates a X-PRODUCTPLAN-WEBHOOK-TOKEN header if the webhook is configured with a token.

Use the tables below to view details about fields that may be contained in the payload. Only fields that have been updated will appear in the payload

FieldDescription
commentsArray of comments associated with the bar.
containerWhether or not this bar is a container.
custom_dropdown_fieldsArray of custom dropdown fields created in ProductPlan. ID and value of the field provided. Custom dropdown fields consist of team or company level single select fields, multi-select fields, and any associated objectives.
custom_text_fieldsArray of custom text fields created in ProductPlan. ID and value of the field provided.
descriptionIn-depth explanation of what the bar represents.
effortThe amount of effort associated with the bar.
ends_onDate for which work associated with the bar is to end.
idThe ID of the bar.
laneThe lane assigned to the bar. ID and value of the lane provided.
legendThe legend assigned to the bar. ID, value, and label of the legend provided.
nameTitle of the bar.
notesAdditional information to be shared.
parentContainer of the bar. ID and name of the container provided.
parkedWhether or not this bar is parked.
percent_doneDetermines the shading of the bar to indicate progress. Null is fully saturated. 0-100 displays a gradual shading until fully saturated.
starts_onDate for which work associated with the bar is to begin.
strategic_valueWhy this bar is important.
tagsArray of keywords and terms associated with the bar.
updated_atDate and time the bar was last updated.

Example bar_update payload:

{
  "actor": {
    "name": "name",
    "email": "[email protected]"
  },
  "webhook_created": "YYYY-MM-DD HH:MM:SS UTC",
  "event": "bar_update",
  "data": [
    {
      "id": 1,
      "updated_at": "YYYY-MM-DDTHH:MM:SS.SSS±HH:MM",
      "name": "New Name",
      "description": "New Description",
      "container": false,
      "parked": false,
      "strategic_value": "This is the value",
      "notes": "Time to sail.",
      "percent_done": 26,
      "starts_on": "YYYY-MM-DD",
      "ends_on": "YYYY-MM-DD",
      "effort": 1,
      "comments": [
        {
          "body": "This new bar is looking great"
        }
      ],
      "lane": [
        {
          "id": 2,
          "value": "Lane 1"
        }
      ],
      "legend": [
        {
          "id": 3,
          "value": "Goal 1",
          "label": "Super Cool Legend"
        }
      ],
      "tags": [
        {
          "name": "demo"
        },
        {
          "name": "sprint"
        }
      ],
      "custom_text_fields": [
        {
          "label": "Custom Text Field",
          "value": "New text"
        }
      ],
      "custom_dropdown_fields": [
        {
          "label": "Custom Dropdown Field",
          "value": "Label 3"
        },
        {
          "label": "MultiSelect Field Test",
          "value": [
            "Label 2",
            "Label 3"
          ]
        }
      ]
    }
  ]
}

As shown above, you should expect to receive a payload containing the actor's name and email, the event, and the specific data objects that had changes associated with the bars updated.