---
title: "List webhooks for a repository"
method: GET
path: "/repositories/{workspace}/{repo_slug}/hooks"
tags: ["Repositories", "Webhooks"]
---

# List webhooks for a repository

`GET /repositories/{workspace}/{repo_slug}/hooks`

## Request

- Base URL: `https://api.bitbucket.org/2.0`
- URL: `https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/hooks`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://bitbucket.org/site/oauth2/authorize`
    - Token URL: `https://bitbucket.org/site/oauth2/access_token` scopes: `webhook`
  - HTTP basic
  - API key in header `Authorization`

Returns a paginated list of webhooks installed on this repository.

## Path parameters

- `workspace` string, required
- `repo_slug` string, required

## Response `200`

The paginated list of installed webhooks.

- PaginatedWebhookSubscriptions: A paginated list of webhook subscriptions
  - `values` WebhookSubscription[]
    - `type` string, required
    - `uuid` string: The webhook's id.
    - `url` string, uri: The URL events get delivered to.
    - `description` string: 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.
    - `subject` Object: Base type for most resource objects. It defines the common `type` element that identifies an object's type. It also identifies the element as Swagger's `discriminator`.
      - `type` string, required
    - `active` boolean: Whether or not the webhook subscription is enabled.
    - `created_at` string, date-time: The timestamp when the webhook subscription was created.
    - `events` string[]: The events this webhook is subscribed to.
    - `secret_set` boolean: 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.
    - `secret` string: 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.
    - `links` WebhooksSubscriptionLinks: A link to a resource related to this object.
      - `self` WebhooksSubscriptionLink
        - `href` string, uri
  - `pagelen` integer: Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values.
  - `next` string, uri: Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs.

## Other responses

- `403`: If the authenticated user is not an owner on the specified repository.
- `404`: If the webhook or repository does not exist.

## Changes

- **2026-10-03** `869214428f35`: 2 breaking, 3 warning, 6 info
  - added the new path request parameter `repo_slug`
  - added the new path request parameter `workspace`
  - removed the optional property `page` from the response with the `200` status
  - removed the optional property `previous` from the response with the `200` status
  - …7 more
- **2026-07-13** `d344164ecb11`: 2 warning
  - added the new `pipeline:span_created` enum value to the `values/items/allOf[subschema #2: Webhook Subscription]/events/items/` response property for the response status `200`
  - added the new `pullrequest:push` enum value to the `values/items/allOf[subschema #2: Webhook Subscription]/events/items/` response property for the response status `200`

[Operation history](https://skmtc.dev/atlassian/apis/bitbucket-api/changes/repositories/:workspace/:repo_slug/hooks/get.md)

---

[API](https://skmtc.dev/atlassian/apis/bitbucket-api.md) - [All operations](https://skmtc.dev/atlassian/apis/bitbucket-api/llms.txt) - [OpenAPI document](https://skmtc.dev/atlassian/apis/bitbucket-api/revisions/6ae783fa75da?raw)
