Workspaces
Webhooks

Create a webhook for a workspace

Changed on

Creates a new webhook on the specified workspace.

Workspace webhooks are fired for events from all repositories contained by that workspace.

Example:

$ curl -X POST -u credentials -H 'Content-Type: application/json'
  https://api.bitbucket.org/2.0/workspaces/my-workspace/hooks
  -d '
    {
      "description": "Webhook Description",
      "url": "https://example.com/",
      "active": true,
      "secret": "this is a really bad secret",
      "events": [
        "repo:push",
        "issue:created",
        "issue:updated"
      ]
    }'

When the secret is provided it will be used as the key to generate a HMAC digest value sent in the X-Hub-Signature header at delivery time. Passing a null or empty secret or not passing a secret will leave the webhook's secret unset. Bitbucket only generates the X-Hub-Signature when the webhook's secret is set.

This call requires the webhook scope, as well as any scope that applies to the events that the webhook subscribes to. In the example above that means: webhook, repository and issue.

The url must properly resolve and cannot be an internal, non-routed address.

Only workspace owners can install webhooks on workspaces.

post/workspaces/{workspace}/hooks

Request

  • Base URL
    https://api.bitbucket.org/2.0
  • URL
    https://api.bitbucket.org/2.0/workspaces/{workspace}/hooks
  • Auth
    • OAuth 2
      Authorization code: https://bitbucket.org/site/oauth2/authorize
      Token URL: https://bitbucket.org/site/oauth2/access_token scopes: webhook
    • or HTTP basic
    • or API key in header Authorization

Path parameters

workspacestring required

This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example {workspace UUID}.

Response

The webhook subscription object.

typestring required
uuidstring

The webhook's id.

urlstring uri

The URL events get delivered to.

descriptionstring

A user-defined description of the webhook.

subject_type'repository' | 'workspace'

The type of entity. Set to either repository or workspace based on where the subscription is defined.

activeboolean

Whether or not the webhook subscription is enabled.

created_atstring date-time

The timestamp when the webhook subscription was created.

eventsstring[]

The events this webhook is subscribed to.

secret_setboolean

Indicates whether or not the hook has an associated secret. It is not possible to see the hook's secret. This field is ignored during updates.

secretstring

The secret to associate with the hook. The secret is never returned via the API. As such, this field is only used during updates. The secret can be set to null`` or ""`` to remove the secret (or create a hook with no secret). Leaving out the secret field during updates will leave the secret unchanged. Leaving out the secret during creation will create a hook with no secret.

Changes

    • breaking

      added the new path request parameter workspace

    • info

      api operation id create_workspace_hook was added

    • info

      added the optional property / to the response with the status

    • info

      the response optional property / became read-only for the status

    • info

      the response optional property / became read-only for the status

    • info

      the response optional property / became read-only for the status

    • info

      the response optional property / became read-only for the status

    • warning

      added the new pipeline:span_created enum value to the // response property for the response status

    • warning

      added the new pullrequest:push enum value to the // response property for the response status