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}" \
https://bitbucket.org/site/oauth2/access_token \
-d grant_type=client_credentials -d scopes="repository" | jq --raw-output '.access_token')
export BB_TOKEN
curl https://api.bitbucket.org/2.0/repositories/"${BITBUCKET_REPO_OWNER}"/"${BITBUCKET_REPO_SLUG}"/pullrequests \
-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:
<span>% Total % Received % Xferd Average Speed Time Time Time Current</span>
<span>Dload Upload Total Spent Left Speed</span>
<span>0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0</span>
<span>100 397 100 11 100 386 174 6126 --:--:-- --:--:-- --:--:-- 6301</span>
<span>Bad Request</span>