---
title: "List webhooks for a workspace"
method: GET
path: "/workspaces/{workspace}/hooks"
tags: ["Workspaces", "Webhooks"]
---

# List webhooks for a workspace

`GET /workspaces/{workspace}/hooks`

Returns a paginated list of webhooks installed on this workspace.

## Response `200`

The paginated list of installed webhooks.

- PaginatedWebhookSubscriptions — A paginated list of webhook subscriptions
  - `size` integer — Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute.
  - `page` integer — Page number of the current results. This is an optional element that is not provided in all responses.
  - `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.
  - `previous` string, uri — Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs.
  - `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
    - `created_at` string, date-time
    - `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.

## Other responses

- `403` — If the authenticated user is not an owner on the specified workspace.
- `404` — If the specified workspace does not exist.

---

[API](https://skmtc.net/bitbucket/apis/bitbucket-api.md) · [All operations](https://skmtc.net/bitbucket/apis/bitbucket-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bitbucket/bitbucket-api/versions/4ec8bd2515c5/schema)
