Publishes a pull request to Bitbucket Cloud from a specified source branch to a target branch.
Input Schema
| Property | Type | Description | Required | 
|---|---|---|---|
| title | string | The title for the pull request | |
| token | string | The token to use for authorization to BitBucket Cloud | |
| repoUrl | string | Repository Location | |
| description | string | The description of the pull request | |
| sourceBranch | string | Branch of repository to copy changes from | |
| targetBranch | string | - | |
| gitAuthorName | string | - | |
| gitAuthorEmail | string | - | 
Output Schema
| Property | Type | Description | Required | 
|---|---|---|---|
| pullRequestUrl | string | A URL to the pull request with the provider | 
Usage Examples
Create a feature branch PR to main
Opens a pull request from a feature branch to main with a concise description. It then logs the PR URL using debug:log.
steps:
  - id: create_feature_pr
    action: publish:bitbucketCloud:pull-request
    input:
      repoUrl: bitbucket.org?workspace=acme&project=PAY&repo=payments-service
      title: "feat: add customer credit limit API"
      description: |-
        Adds /credit-limits endpoints and docs.
        See JIRA PAY-1423 for details.
      sourceBranch: feature/pay-1423-credit-limits
      targetBranch: main
  - id: log_feature_pr
    action: debug:log
    input:
      message: "Created PR at ${{ steps.create_feature_pr.output.pullRequestUrl }}"Hotfix PR into a release branch with explicit credentials
Creates a PR from a hotfix branch into a release branch, providing a token and author info for auditability. It then logs the PR URL using debug:log.
steps:
  - id: hotfix_pr
    action: publish:bitbucketCloud:pull-request
    input:
      repoUrl: bitbucket.org?workspace=acme&project=WEB&repo=frontend
      title: "fix: revert broken navbar in 2.8.1"
      description: "Reverts regression introduced by abc123. Urgent patch for 2.8.x."
      sourceBranch: hotfix/2.8.1-navbar-revert
      targetBranch: release/2.8
      token: ${{ secrets.bitbucketToken }}
      gitAuthorName: "CI Bot"
      gitAuthorEmail: "ci-bot@acme.example"
  - id: log_hotfix_pr
    action: debug:log
    input:
      message: "PR created: ${{ steps.hotfix_pr.output.pullRequestUrl }}"Parameterized PR using the repository default branch
Opens a PR without specifying targetBranch so Bitbucket uses the repository default branch. Branch names and titles are parameterized, and the PR URL is logged via debug:log.
steps:
  - id: param_pr
    action: publish:bitbucketCloud:pull-request
    input:
      repoUrl: bitbucket.org?workspace=acme&project=PLAT&repo=${{ parameters.repoName }}
      title: "chore: update Helm chart for ${{ parameters.serviceName }}"
      description: |-
        Updates Helm values for ${{ parameters.serviceName }}.
        Change ref: ${{ parameters.ticketId }}.
      sourceBranch: feature/${{ parameters.ticketId }}-helm-update
  - id: log_param_pr
    action: debug:log
    input:
      message: "Opened PR: ${{ steps.param_pr.output.pullRequestUrl }}"Monorepo automation PR to develop
Creates a PR from an automation branch to develop in a monorepo, typically after automated changes land on the source branch. It logs the PR URL using debug:log.
steps:
  - id: monorepo_pr
    action: publish:bitbucketCloud:pull-request
    input:
      repoUrl: bitbucket.org?workspace=acme&project=PLAT&repo=platform-config
      title: "chore: bump Node.js to 18.x across services"
      description: |-
        Automated update of Node runtime and Dockerfiles.
        Trigger: template run ${{ parameters.runId }}.
      sourceBranch: automation/node18-bump
      targetBranch: develop
      token: ${{ secrets.bitbucketToken }}
  - id: log_monorepo_pr
    action: debug:log
    input:
      message: "PR: ${{ steps.monorepo_pr.output.pullRequestUrl }}"Documentation updates PR with custom author
Opens a PR from a docs branch to main for documentation updates, setting an explicit author and using a token passed as a parameter. It logs the PR URL with debug:log.
steps:
  - id: docs_pr
    action: publish:bitbucketCloud:pull-request
    input:
      repoUrl: bitbucket.org?workspace=acme&project=DOCS&repo=engineering-handbook
      title: "docs: Q4 updates to service ownership guidelines"
      description: "Refreshes guidelines and adds architecture review checklist."
      sourceBranch: docs/q4-service-ownership
      targetBranch: main
      token: ${{ parameters.bitbucketToken }}
      gitAuthorName: "Docs Automation"
      gitAuthorEmail: "docs-bot@acme.example"
  - id: log_docs_pr
    action: debug:log
    input:
      message: "Docs PR: ${{ steps.docs_pr.output.pullRequestUrl }}"