S) Github integration for Project Boards


Github Authentication

The Github authentication in Project Boards uses the OAuth 2.0 protocol, so any user of Project Boards can be linked to a Github account.

That means you can use your Github account to login on Project Boards.

How to link a Github account

  1. Go to your user profile
  2. Click on External accounts
  3. Click on the link Link my Github Account
  4. You are redirected to the Github Authorize application form
  5. Authorize Kanboard by clicking on the button Accept
  6. Your account is now linked

Now, on the login page you can be authenticated in one click with the link Login with my Github Account.

Your name and email are automatically updated from your Github Account if defined.

Github Webhooks

Github webhooks are plugged to Project Boards automatic actions. When an event occurs on Github, an action can be performed on Project Boards.

List of available events

  • Github commit received
  • Github issue opened
  • Github issue closed
  • Github issue reopened
  • Github issue assignee change
  • Github issue label change
  • Github issue comment created

List of available actions

  • Create a task from an external provider
  • Change the assignee based on an external username
  • Change the category based on an external label
  • Create a comment from an external provider
  • Close a task
  • Open a task

Configuration on Project Boards

The Webhook URL API endpoint is visible on the project settings page:

The URL will be different from this screenshot.

Configuration on Github

Go to your project settings page, on the left choose "Webhooks & Services", then click on the button "Add webhook".


  • Payload url: Copy and paste the link from the Project Boards project settings (section Project Settings > Integrations > Github).
  • Select "Send me everything"

Each time an event happens, Github will send an event to Project Boards now. The Project Boards webhook url is protected by a random token.

Everything else is handled by automatic actions in your Project Boards project settings.

Examples

To make it work, you have to create some automatic actions in your projects:

Close a Project Boards task when a commit pushed to Github

  • Choose the event: Github commit received
  • Choose the action: Close the task

When one or more commits are sent to Github, Project Boards will receive the information, each commit message with a task number included will be closed.

Example:

  • Commit message: "Fix bug #1234"
  • That will close the Project Boards task #1234

Create a Project Boards task when a new issue is opened on Github

  • Choose the event: Github issue opened
  • Choose the action: Create a task from an external provider

When a task is created from a Github issue, the link to the issue is added to the description and the task have a new field named "Reference" (this is the Github ticket number).

Close a Project Boards task when an issue is closed on Github

  • Choose the event: Github issue closed
  • Choose the action: Close the task

Reopen a Project Boards task when an issue is reopened on Github

  • Choose the event: Github issue reopened
  • Choose the action: Open the task

Assign a task to a Project Boards user when an issue is assigned on Github

  • Choose the event: Github issue assignee change
  • Choose the action: Change the assignee based on an external username

Note: The username must be the same between Github and Project Boards and the user must be member of the project.

Assign a category when an issue is tagged on Github

  • Choose the event: Github issue label change
  • Choose the action: Change the category based on an external label
  • Define the label and the category

Create a comment on Project Boards when an issue is commented on Github

  • Choose the event: Github issue comment created
  • Choose the action: Create a comment from an external provider

If the username is the same between Github and Project Boards the comment author will be assigned, otherwise there is no author. The user also have to be member of the project in Project Boards .

Still need help? Contact Us Contact Us