Bitbucket Webhooks API

Webhooks provide a way to configure Bitbucket Cloud to make requests to your server (or another external service) whenever certain events occur in Bitbucket Cloud. A webhook consists of: * A subject -- The resource that generates the events. Currently, this resource is the repository, user account, or team where you create the webhook. * One or more event -- The default event is a repository push, but you can select multiple events that can trigger the webhook. * A URL -- The endpoint where you want Bitbucket to send the event payloads when a matching event happens. There are two parts to getting a webhook to work: creating the webhook and triggering the webhook. After you create a webhook for an event, every time that event occurs, Bitbucket sends a payload request that describes the event to the specified URL. Thus, you can think of webhooks as a kind of notification system. Use webhooks to integrate applications with Bitbucket Cloud. The following use cases provides examples of when you would want to use webhooks: * Every time a user pushes commits in a repository, you may want to notify your CI server to start a build. * Every time a user pushes commits or creates a pull request, you may want to display a notification in your application.

Business capability
Webhook & Event Subscription Management BC-4270.80

Operations 12

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /hook_events List webhook subject types · Get a webhook resource #
Ask an LLM
“What kinds of things can I attach webhooks to?”
“Which resource types support webhooks?”
Tell an agent
List the resource types that accept webhooks.
Show all webhook subject types.
GET /hook_events/{subject_type} List webhook events for a subject type · List subscribable webhook types #
Ask an LLM
“Which events can a repository webhook subscribe to?”
“What event names are valid for workspace webhooks?”
Tell an agent
List subscribable webhook events for {subject_type}.
Show the event names available on {subject_type} webhooks.
GET /repositories/{workspace}/{repo_slug}/hooks List a repository's webhooks · List webhooks for a repository #
Ask an LLM
“What webhooks are installed on this repository?”
“Is any webhook on my repo pointing at an old URL?”
Tell an agent
List webhooks on repository {workspace}/{repo_slug}.
Show every repo-level hook in {repo_slug}.
POST /repositories/{workspace}/{repo_slug}/hooks Create a repository webhook · Create a webhook for a repository #
Ask an LLM
“How do I get notified when someone pushes to one repo?”
“Can a repository webhook sign its payloads with a secret?”
Tell an agent
Create a webhook on repository {workspace}/{repo_slug}.
Add a push webhook to repo {repo_slug} in {workspace}.
DELETE /repositories/{workspace}/{repo_slug}/hooks/{uid} Delete a repository webhook · Delete a webhook for a repository #
Ask an LLM
“How do I remove a webhook from one repository?”
“Can I delete a repo hook that keeps failing?”
Tell an agent destructive · confirm first
Delete webhook {uid} from repository {workspace}/{repo_slug}.
Remove repo hook {uid} in {repo_slug}.
GET /repositories/{workspace}/{repo_slug}/hooks/{uid} Get a repository webhook · Get a webhook for a repository #
Ask an LLM
“Which events does a particular repo webhook fire on?”
“Can I check whether a repository webhook is active?”
Tell an agent
Get webhook {uid} on repository {workspace}/{repo_slug}.
Show repo hook {uid}'s events and URL.
PUT /repositories/{workspace}/{repo_slug}/hooks/{uid} Update a repository webhook · Update a webhook for a repository #
Ask an LLM
“How do I change the URL of a repo webhook?”
“Can I pause a repository webhook without deleting it?”
Tell an agent
Update webhook {uid} on repository {workspace}/{repo_slug}.
Deactivate repo hook {uid} in {repo_slug}.
GET /workspaces/{workspace}/hooks List a workspace's webhooks · List webhooks for a workspace #
Ask an LLM
“Which webhooks fire for every repo in my workspace?”
“What workspace-level hooks are configured?”
Tell an agent
List webhooks on workspace {workspace}.
Show all workspace-wide hooks in {workspace}.
POST /workspaces/{workspace}/hooks Create a workspace webhook · Create a webhook for a workspace #
Ask an LLM
“Can one webhook cover all repositories in my workspace?”
“How do I subscribe to events across the whole workspace?”
Tell an agent
Create a webhook on workspace {workspace}.
Add a workspace-wide hook in {workspace} for all repositories.
DELETE /workspaces/{workspace}/hooks/{uid} Delete a workspace webhook · Delete a webhook for a workspace #
Ask an LLM
“How do I remove a workspace-wide webhook?”
“Can I delete a workspace hook by its id?”
Tell an agent destructive · confirm first
Delete webhook {uid} from workspace {workspace}.
Remove workspace hook {uid}.
GET /workspaces/{workspace}/hooks/{uid} Get a workspace webhook · Get a webhook for a workspace #
Ask an LLM
“What does a specific workspace-level webhook subscribe to?”
“Is a given workspace hook still active?”
Tell an agent
Get webhook {uid} on workspace {workspace}.
Show workspace hook {uid}'s settings.
PUT /workspaces/{workspace}/hooks/{uid} Update a workspace webhook · Update a webhook for a workspace #
Ask an LLM
“How do I rotate the secret on a workspace webhook?”
“Can I change which events a workspace hook listens for?”
Tell an agent
Update webhook {uid} on workspace {workspace}.
Change the events on workspace hook {uid} in {workspace}.

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/bitbucket:bitbucket-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

bitbucket-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Bitbucket Webhooks API
  description: Code against the Bitbucket API to automate simple tasks, embed Bitbucket data into your own site, build mobile or desktop apps, or even add custom UI add-ons into Bitbucket itself using the Connect framework.
  version: '2.0'
  termsOfService: https://www.atlassian.com/legal/customer-agreement
  contact:
    name: Bitbucket Support
    url: https://support.atlassian.com/bitbucket-cloud/
    email: support@bitbucket.org
servers:
- url: https://api.bitbucket.org/2.0
tags:


# --- truncated at 32 KB (144 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bitbucket/refs/heads/main/openapi/bitbucket-webhooks-api-openapi.yml