Information

  • PLANTA pulse offers outgoing webhooks which users can use to register on certain objects and events in PLANTA pulse and receive updates about these activities.
  • To do so, a webhook configuration can be added in PLANTA pulse which reacts when the defined events occur and sends information to the user.
    • That way, users can, for example, be informed about all updates within a board or about all activities of a user.

Initial Setup

Enable webhooks

  • In the Administration panel→ Settings tab → API Settings menu item, activate the  Enable Webhooks checkbox.
  • From now on, webhooks can be configured via the PLANTA pulse REST API.
  • The Print webhook debug logs checkbox can be used to configure whether debug logs for webhooks are to be printed.
    • Where the logs are printed depends on the logger configuration.

Configuration

Information

  • In order to subscribe to certain events in PLANTA pulse, configurations for webhooks can be added.
    • It is possible to watch one or several objects and/or their child objects (e.g. all cards within a board).
    • Both all activities or only certain activities of the objects can be watched.
  • Webhook configurations can be added via the PLANTA pulse REST API using POST /api/webhooks.
  • Alternatively, webhooks can also be created and edited in the Administration panel → Webhooks

Example: A webhook which watches for when a list is renamed and when new users are added to a card within the list

const webhookExample = {
  "endpoint": "https://example.url", // URL
  "title": "New Webhook",
  "description": "Watching a list",
  "language": "en",
  "format": "raw",
  "author": "username",
  "enabled": true, // you can turn off the webhook
  "objects": {
    "ids": [
      "jvNyPn3zThWwMBYR9", "...", // Object IDs to watch, no different types possible
    ],
    "type": "lists" // Object type
  },
  "watchActivitiesEnabled": true,
	"watchActivities": [ // define activities to watch, don't add this if you want to watch any update
    "renameList" // only triggers when a list title is changed
  ],
  "watchChildActivitiesEnabled": true, // you can also turn off the child spectator
  "watchChildTypes": [
   "cards" // multiple types are allowed here
  ],
  "watchChildActivities": [
    "joinMember", "moveCard" // special acitvities to watch
  ]
};
JSON

Create Webhook in the Administration Panel

Procedure

  • Open the Administration panel → Webhooks.
  • Click .
  • Enter a Title for the webhook.
  • If needed, enter a Description.
  • Enter the Endpoint to which the webhook is supposed to send information.
  • Select a Format.
    • Generic: unformatted (Default)
    • MS Teams: optimized for Microsoft Teams notifications
  • Select the Type of the object to be watched.
  • Enter the Object Id(s) of the objects to be watched.
    • If several IDs are entered, they need to be separated using commas.
  • Select whether the activities of the object are to be watched.
  • In the Activities to Be Watched field, enter the activities to be watched.
    • If nothing is entered, all activities of the object are watched.
  • Select whether child elements are to be watched.
  • If needed, specify which child elements are to be watched.
  • If needed, specify which activities of the child elements are to be watched.

Parameter

{
  "endpoint": "string",
  "title": "string",
  "description": "string",
  "language": "string",
  "format": "string",
  "author": "string",
  "enabled": true,
  "objects": {
    "ids": [
      "string"
    ],
    "type": "string"
  },
  "watchActivitiesEnabled": true,
  "watchActivites": [
    "string"
  ],
  "watchChildTypes": [
    "string"
  ],
  "watchChildActivities": [
    "string"
  ],
  "watchChildActivitiesEnabled": false,
  ]
}
JSON
ParameterOptional?Possible ValuesDescription
endpointRequiredStringURL of the webhook endpoint
titleRequiredStringTitle of the webhook configuration
descriptionOptionalStringDescription of the webhook configuration
languageOptionalde, enLanguage in which notifications are sent (default= en)
formatOptionalraw, msteams

Format in which the webhook sends notifications

Details

  • raw: unformatted (Default)
  • msteams: optimized for Microsoft Teams notifications
authorRequiredStringUser which is used as author
enabledRequiredBooleanDe/activates the webhook configuration
objectsOptional
Contains objects to be watched
  • ids
RequiredString

IDs of the objects to be watched

For type=global, the ID 1 is used.

  • type
Requiredglobal, projects, boards, cards, lists, swimlanes, users

Object type of the objects to be watched, can only contain one type

Using global, all objects in the system can be watched

watchActivitiesEnabledRequiredBoolean

Defines whether the activities of the object are to be watched

watchActivitiesOptionalString

Activities to be watched

If nothing is defined, all activities are watched

watchChildTypesOptionalString

Child object types to be watched

If nothing is defined, all child objects are watched

watchChildActivitiesOptionalString

Activities of child objects to be watched

If nothing is defined, all activities are watched

watchChildActivitiesEnabledOptionalBooleanEnables watching child activities

Object Types

ObjectChild objects
GlobalProjects, Boards, Swimlanes, Lists, Cards, Checklists, Comments, Workloads, Attachments
ProjectsBoards, Swimlanes, Lists, Cards, Checklists, Comments, Workloads, Attachments
BoardsSwimlanes, Lists, Cards, Checklists, Comments, Workloads, Attachments
Swimlanes / ListsCards, Checklists, Comments, Workloads, Attachments
CardsChecklists, Comments, Workloads, Attachments
Users

Activity Types

ParameterTypeDescription
watchChildActivities

addProject Adding of a project
Further activities of child objects
ParameterTypeDescription

watchActivities













 

 

 

 

 

 

 

updateProjectTitle

Changing the project title
updateProjectDescriptionChanging the project description
updateProjectProjectKeyChanging the project key
removeProjectDescriptionRemoving the project description
updateProjectDetailsChanging the detailed description of the project
removeProjectDetailsRemoving the detailed description of the project
updateProjectStartDateChanging the start date of the project
updateProjectDueDateChanging the due date of the project
addProjectDueDateAdding the due date of the project
addProjectStartDateAdding the start date of the project
deleteProjectDueDateRemoving the due date of the project
deleteProjectStartDateRemoving the start date of the project
setProjectCustomFieldSelecting the value of a custom field on the project
unsetProjectCustomFieldRemoving the value of a custom field on the project
assignProjectCustomFieldAdding a custom field on the project
unassignProjectCustomFieldRemoving a custom field from the project
createCustomFieldDefinitionCreating a custom field in the project
updateCustomFieldDefinitionChanging a custom field in the project
deleteCustomFieldDefinitionDeleting a custom field in the project

watchChildActivities


 

 

 

 

createBoard

Creating a board

importBoard

Importing a board

copyBoard

Copying a board

createBoardFromTemplate

Creating a board from a template

moveBoardTarget

Moving a board into the project
moveBoardSourceMoving a board out of the project
Further activities of child objects
ParameterTypeDescription
watchActivitiesdeleteBoardDeleting the board
removeBoardDescriptionRemoving the board description
updateBoardDescriptionChanging the board description

updateBoardTitle 

Changing the board title

changeBoardPermissionChanging the board visibility
addBoardStartDateAdding the start date of the board
updateBoardStartDateChanging the start date of the board
deleteBoardStartDateRemoving the start date of the board
addBoardDueDateAdding the due date of the board
updateBoardDueDateChanging the due date of the board
deleteBoardDueDateRemoving the due date of the board
addBoardMemberAdding board members
removeBoardMemberRemoving board members
archivedBoardArchiving a board
restoredBoardRestoring a board
setBoardCustomFieldSelecting the value of a custom field on the board
unsetBoardCustomFieldRemoving the value of a custom field on the board
assignBoardCustomFieldAdding a custom field on the board
unassignBoardCustomFieldRemoving a custom field from the board
createCustomFieldDefinitionCreating a custom field on the board
updateCustomFieldDefinitionChanging a custom field on the board
deleteCustomFieldDefinitionDeleting a custom field from the board
watchChildActivitieslinkBoardLinking a board on the board
linkCardLinking a card on the board
deleteLinkBoardDeleting a linked board
deleteLinkCardDeleting a linked card
createSwimlaneCreating a swimlane
copySwimlaneCopying a swimlane
createListCreating a list
importListImporting a list

copyList

Copying a list

moveListSource

Moving a list into the board
moveListTargetMoving a list out of the board

createCard

Creating a card
importCardImporting a card
copyCardCopying a card
moveCardTargetMoving a card into the board
moveCardSourceMoving a card out of the board
Further activities of child objects
ParameterTypeDescription
watchActivitieslArchiving a list
restoredListRestoring a list

deleteList

Deleting a list

renameList

Renaming a list
watchChildActivities

Activities of child objects


ParameterTypeDescription
watchActivitiesarchivedSwimlaneArchiving a swimlane
restoredSwimlaneRestoring a swimlane
deleteSwimlaneDeleting a swimlane
renameSwimlaneRenaming a swimlane
watchChildActivities

Activities of child objects


ParameterTypeDescription
watchActivitiesarchivedCardArchiving a card
restoredCardRestoring a card
deleteCardDeleting a card
moveCardMoving a card within the board
setDueDateAdding the due date of the card
setStartDateAdding the start date of the card
unsetDueDateRemoving the due date of the card
unsetStartDateRemoving the start date of the card
updateDueDateChanging the due date of the card
updateStartDateChanging the start date of the card
addedLabelAdding a label
removedLabelRemoving a label
updateCardTitleChanging the card title
updateCardDescriptionChanging the card description
removeCardDescriptionRemoving the card description
joinMemberAdding a card member
unjoinMemberRemoving a card member
completedCardMarking the card as "Completed"
reopenedCardRemoving the "Completed" status
setCardCustomFieldSelecting the value of the custom field on the card
unsetCardCustomFieldRemoving the value of the custom field on the card
assignCardCustomFieldAdding a custom field to the card
unassignCardCustomFieldRemoving the custom field from the card
voteAddAdding a vote for the "Voting" custom field
watchChildActivitiesaddChecklistAdding a checklist
addChecklistItemAdding a checklist item
addCommentAdding a comment
addWorkloadAdding hours worked
setChecklistItemFinishedMarking a checklist item as "Completed"
unsetChecklistItemFinishedRemoving the "Completed" status of a checklist item
removeChecklistRemoving a checklist
removeChecklistItemRemoving a checklist item

renameChecklist

Renaming a checklist

renameChecklistItem

Renaming a checklist item
addAttachmentAdding an attachment
renameAttachmentRenaming an attachment
removeAttachmentRemoving an attachment
updatedCloudAttachmentChanging a OneDrive attachment