# Bitbucket Premium: PR Gating Setup

{% hint style="warning" %}
This setup is for **Bitbucket Premium**.

Use it when you want to authenticate via a **Workspace Access Token**. It also supports required checks before merge (PR gating).

If you’re on **Bitbucket Free or Standard**, use the [**user-based setup**](/pr-and-release-gating/bitbucket-pr-gating/bitbucket-ci-pr-gating-via-aikido-dashboard.md) instead.
{% endhint %}

## Set up Bitbucket PR Scanning <a href="#setting-up-bitbucket-ci" id="setting-up-bitbucket-ci"></a>

{% stepper %}
{% step %}
**Create a Workspace Access Token**

In Bitbucket, go to `Workspace settings > Access tokens`.

Select **Create access token**.

<div data-with-frame="true"><figure><img src="/files/SeEbP9EoDiPKKL2bec05" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Give it the right access**

Name the token (for example, `AikidoSec`). Set an expiry date that matches your rotation policy.

Enable these scopes:

* **Repositories:** Read & Write
* **Pull Requests:** Read & Write
* **Webhooks:** Read & Write
* **Pipelines:** Read & Write

<div data-with-frame="true"><figure><img src="/files/cgClOkJNzZdzx7OGKpoG" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Copy the access token**

Copy the generated token. Paste it in step 5.

The token is only shown once. You can’t retrieve it later.

<div data-with-frame="true"><figure><img src="/files/VU6ioUCggG16qCLE4jPK" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Enable the integration**

In Aikido, open the [Integrations](https://app.aikido.dev/settings/integrations?section=ci) page. Then select **Bitbucket** under **PR Quality Gating**.

<div data-with-frame="true"><figure><img src="/files/BW1uONkhDpMLbEKEzA9Z" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Add the token to Aikido**

Paste the Workspace Access Token in Aikido. Aikido will validate the token and its permissions.

<div data-with-frame="true"><figure><img src="/files/HvTzwxzx6ADcaXrTwoME" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Configure your first repository**

After authorization, Aikido opens the [Bitbucket PR Checks](https://app.aikido.dev/settings/integrations/bitbucket/checks) page.

Start with **one repository** first. Confirm everything works before rolling out broadly.

<div data-with-frame="true"><figure><img src="/files/GRUWZXXvr38HceQaV68k" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Verify with a new PR**

Open a new PR in the repo you configured. Then confirm the checks run.

<div data-with-frame="true"><figure><img src="/files/JTnxLwVZP0ezWYZaPWBu" alt=""><figcaption></figcaption></figure></div>

Comments and check updates should appear as the Workspace Access Token identity (for example, `AikidoSec`).

<figure><img src="/files/2EdCIt4ZRmYfDTYolmZl" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Require the scan as a Merge Check**

If you want to block merging until the scan succeeds, configure **required checks** in Bitbucket.

In Bitbucket, go to `Repository settings > Workflow > Branch restrictions`. Add or update a restriction for your target branch (for example, `main`).

Atlassian reference: [Suggest or require checks before a merge](https://support.atlassian.com/bitbucket-cloud/docs/suggest-or-require-checks-before-a-merge/).
{% endstep %}

{% step %}
**Enable for all repositories**

Once you’re happy with the results, go back to the [Bitbucket PR Checks](https://app.aikido.dev/settings/integrations/bitbucket/checks) page and enable checks for the rest of your repositories.

<div data-with-frame="true"><figure><img src="/files/Xtf1wEd1z1N0rOjVSL2v" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Set the default for new repositories**

In the top-right, open `Actions` and select `Set Default for New Repos`.

See [Default PR/MR gating configuration for new repositories](/pr-and-release-gating/aikido-ci-gating-functionality/default-pr-mr-gating-configuration-for-new-repositories.md) for UI guidance.
{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.aikido.dev/pr-and-release-gating/bitbucket-pr-gating/bitbucket-ci-pr-gating-via-aikido-dashboard-with-a-workspace-access-token.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
