Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

API curl in pipelines to create a pull request returns "Bad request"


I have a custom pipeline which runs on a schedule to run some automated updates and then create a pull request with the branch that was created.

The update commands run, the branch gets created and pushed up, but the curl request I make with the Bitbucket API fails with "Bad request" and no other info.

Here is how I'm obtaining credentials and posting the API request:

BB_TOKEN=$(curl -s -S -f -X POST -u "${AUTOMATED_UPDATES_AUTH}" \ \
-d grant_type=client_credentials -d scopes="repository" | jq --raw-output '.access_token')
export BB_TOKEN

-S -X POST \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer ${BB_TOKEN}" \
-d '{
"title": "'"${TITLE}"'"
"description": "",
"source": {
"branch": {
"name": "'"${NEW_BRANCH}"'"
"destination": {
"branch": {
"name": "f2-main"
"close_source_branch": true,
"reviewers": '[]'

Here is the output:

% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 397 100 11 100 386 174 6126 --:--:-- --:--:-- --:--:-- 6301
Bad Request


1 answer

0 votes

Hi Chris and welcome to the community!

There is a comma ( , ) missing after the entry for title in the data which I believe may be causing this error. I am referring to the following part of the data:

"title": "'"${TITLE}"'"
"description": "",

There is no comma after the value of the title, before the "description". Could you please add it, and let me know if the call succeeds then?

Kind regards,

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bitbucket

Git push size limits are coming to Bitbucket Cloud starting April 4th, 2022

Beginning on April 4th, we will be implementing push limits. This means that your push cannot be completed if it is over 3.5 GB. If you do attempt to complete a push that is over 3.5 GB, it will fail...

3,462 views 3 10
Read article

Atlassian Community Events