Assembla's Webhooks tool allows you to post information about space activities such as code commits, Tickets tool activities, posted files, etc. to external systems. (i.e., Slack channels).
Installing the Webhooks tool
You can install the Webhooks tool by opening the Admin menu and then opening the Tools page. Then, scroll down to the Other section and click on +Add next to Webhook.
Please note, not all plans allow for access to the Webhooks Tool. If you would like to upgrade to the Enterprise Cloud plan to gain access to Webhooks please contact us at sales@assembla.com and check our Pricing Page to see what features are included with your plan.
Configuring the tool
Open the Webhook tool from your menu, and then select Configure A Webhook to open the New Webhook screen.
You can select from preconfigured webhooks in the panel to the left or start from scratch and configure your own. If you would like us to add your company to the list of preconfigured webhooks, please email us at support@assembla.com.
Title: This will be the name of the webhook that will display in the submenu
Enabled/Disabled: This turns the webhook on/off. When your webhook is configured, and you are ready to post info, make sure to enable it.
Authentication Type: You can choose between Basic and OAuth
Basic Authentication: You can give webhook the username and password required by the external system through the external url. http://your_username:your_password@link_to_the_external_system_API In some pre-configured posts, you just need to replace "username" and "password" in the url by your information.
OAuth: An authentication method that lets you use apps without them storing your password. Give the webhook your app's API key and Secret. Setup the external service OAuth URL, typically provided provided in external service's API documentation. Authenticate with the service and you are ready to go!
HTTP Method: POST or GET. POST is most commonly used to post info to the external systems.
Content Type: If POST is selected, you can select the desired "content type" from a list of the following options: application/xml, application/json, application/x-www-form-urlencoded, text/html, text/plain
Content: If POST is selected, configure the desired format to display posted information. The available variable are listed below.
%{author}: Name of the author who triggered the event
%{object}: Class name of the related object in the event..
%{space}: Project in which the event happened
%{action}: The action that triggered the event..
%{title}: title of a message, wiki page, or name of uploaded file, ...
%{body}: content of a message, wiki page, ...
%{link}: link to the event in Assembla
%{repository_url}: Repository url for the repository that received the commit
%{repository_suffix}: Repository suffix for the repository that received the commit. If repository suffix is blank, 'origin' will be returned
%{branch}: Branch to which the commit was made (availability: only for commit events and only for git)
%{commit_id}: Commit id (availability: only for repository commit events)
For example, %{author} has %{action} a %{object}: "%{title}" in project %{space} will generate Andy has created a message: "we will need to discuss the new design tomorrow" in project Assembla Development when a message event occurs.
Post Updates About: Use the checkboxes to check the desired project events.
Note: If you subscribe to Code Commits and Git Push it will generate 1 push event and 1 or more commit events (because multiple commits can be pushed at once).
If you have any questions or need assistance. Please always feel free to email us at support@assembla.com. We will be happy to assist.