Adding custom webhooks

Webhooks notify external services about actions that occur in Helix TeamHub. To learn more about webhooks, see using webhooks.

You can create custom webhooks to configure Helix TeamHub to send an HTTP post request with a JSON payload to the specified endpoint URL. You can use any endpoint that can process the request. To learn more about the required payload format and examples for webhooks, see Custom webhook JSON payload format and examples .

You can also add Jira webhooks to integrate Helix DAM with Jira. To learn more, see Adding Jira webhooks for Helix DAM.

Tip

You must be a company admin to work with webhooks at the company level. You must be a company admin or project admin to work with webhooks at the project level.

  1. In Helix TeamHub, go to the location to apply the custom webhook to.

    • To add a webhook that runs on multiple Helix TeamHub projects, go to the company level. Click the company name or logo in the top left corner of the page.

    • To add a webhook that runs on a specific Helix TeamHub project, go to the project level. Click My Dashboard and then select the project from the Projects list at the top of the page or in the My Projects area.

      Tip

      When configuring webhooks in Helix TeamHub, you will see references to repositories/collections. Helix TeamHub stores files in repositories and Helix DAM stores assets in collections.

  2. Click Webhooks in the left navigation pane.

    Important

    Make sure you click Webhooks, not Hooks. The Hooks page will be deprecated in the future.

  3. On the Webhooks page, click Plus Add icon.

  4. On the Define details tab in the Add webhook pane, enter or select information about the custom webhook.

    Field Description
    Name Enter a name for the webhook to distinguish it from other webhooks.
    Type Select Custom. To add a webhook that integrates Helix DAM with Jira, see Adding Jira webhooks.
    Projects Only available when creating a webhook at the company level. By default, the webhook runs on all projects. To only run the webhook on specific projects, select the projects in the list. You can search for a project. To remove a selected project, click X next to it.
    Repositories/collections By default, the webhook runs on all repositories in the selected projects. Those projects are gray in the list. To run the webhook on other repositories in other projects, select the repositories in the list. You can search for a repository. To remove a selected collection, click X next to it.
    Events that trigger webhook Custom webhooks always run when a file or asset is updated. You cannot change this field.
    Interval Select whether to run the webhook immediately after the event is performed or at a specified interval. An interval of 5 minutes or more sends a batch of events that occur during the interval time.
    Status To prevent it from running, toggle the Status off. The webhook is displayed in gray on the Webhooks page. For example, you may want turn off a webhook a project phase is complete and no longer want Helix DAM to automatically update Jira with information.
  5. Click Next.

  6. On the Configure webhook tab, enter or select the webhook URL, header information, and advanced options to customize the webhook.

    Field Description
    URL URL of the endpoint the payload is delivered to.
    Insecure SSL If the endpoint uses an SSL certificate that cannot be verified, such as a self-signed certificate, select this option.
    Authentication headers Authentication information to send in the request. Authentication headers ensure that incoming requests are from a trusted source. The authentication method and header format varies depending on the external service you are working with. To learn more about specific authentication methods and header requirements, see the documentation for the service or application you are integrating with.

    Example authentication headers commonly used in webhook implementations:
    Authorization: ApiKey API_KEY_VALUE
    x-api-key: <api-key>

    To add more than one authentication header, click Add header and then enter the additional header information.
    Headers Describes the request, such as the type of data. You can create custom headers for any purpose.

    To add more than one header, click Add header and then enter the additional header information.
    Advanced settings Optional. Click the arrow to expand the area and set the options.
    • To override the default proxy configuration for the Helix TeamHub instance, select Use custom proxy configuration. Enter a Custom proxy URL or leave the box empty if you do not want to use a proxy.

    • To restrict when webhooks run based on path or reference patterns, see Restricting when webhooks run.

  7. Click Save to save the webhook.

Restricting when webhooks run

By default, Helix TeamHub runs all active webhooks. You can use case-insensitive regular expressions to specify reference and path patterns that restrict when webhooks run.

Reference pattern

To restrict a webhook to only run when a branch or bookmark matches a pattern, specify a Reference pattern.

For example, to run a webhook only when branches named 'main' or 'develop' are updated, use this as the Reference pattern:

^(main|develop)$

To run a webhook only when feature branches are updated and the path is 'tests', use:

  • ^feature as the Reference pattern

  • tests as the Path pattern

Path pattern

To restrict a webhook to only run when a changed path matches a pattern, specify a Path pattern.

For example, to run a webhook only when JavaScript files are changed, leave the Reference pattern empty and use this as the Path pattern: .*\.js$.