Skip to content

Update a webhook for a repository

PUT
/repositories/{workspace}/{repo_slug}/hooks/{uid}

Updates the specified webhook subscription.

The following properties can be mutated:

  • description
  • url
  • secret
  • active
  • events

The hook’s secret is used as a key to generate the HMAC hex digest sent in the X-Hub-Signature header at delivery time. This signature is only generated when the hook has a secret.

Set the hook’s secret by passing the new value in the secret field. Passing a null value in the secret field will remove the secret from the hook. The hook’s secret can be left unchanged by not passing the secret field in the request.

repo_slug
required
string

This can either be the repository slug or the UUID of the repository, surrounded by curly-braces, for example: {repository UUID}.

uid
required
string

Installed webhook’s ID

workspace
required
string

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

The webhook subscription object.

Media type application/json
object
type
required
string
uuid

The webhook’s id

string
url

The URL events get delivered to.

string format: uri
description

A user-defined description of the webhook.

string
subject_type

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

string
Allowed values: repository workspace
subject

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.

object
type
required
string
key
additional properties
any
active
boolean
created_at
string format: date-time
events

The events this webhook is subscribed to.

Array<string>
>= 1 items unique items
Allowed values: issue:comment_created issue:created issue:updated pipeline:span_created project:updated pullrequest:approved pullrequest:changes_request_created pullrequest:changes_request_removed pullrequest:comment_created pullrequest:comment_deleted pullrequest:comment_reopened pullrequest:comment_resolved pullrequest:comment_updated pullrequest:created pullrequest:fulfilled pullrequest:push pullrequest:rejected pullrequest:unapproved pullrequest:updated repo:commit_comment_created repo:commit_status_created repo:commit_status_updated repo:created repo:deleted repo:fork repo:imported repo:push repo:transfer repo:updated
secret_set

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.

boolean
secret

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.

string
0 <= 128 characters
Example
{
"subject_type": "repository",
"events": [
"issue:comment_created"
]
}

If the authenticated user does not have permission to update the webhook.

Media type application/json
Error

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.

object
type
required
string
error
object
message
required
string
detail
string
data

Optional structured data that is endpoint-specific.

object
key
additional properties
any
key
additional properties
any
Example generated
{
"type": "example",
"error": {
"message": "example",
"detail": "example",
"data": {}
}
}

If the webhook or repository does not exist.

Media type application/json
Error

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.

object
type
required
string
error
object
message
required
string
detail
string
data

Optional structured data that is endpoint-specific.

object
key
additional properties
any
key
additional properties
any
Example generated
{
"type": "example",
"error": {
"message": "example",
"detail": "example",
"data": {}
}
}