Trigger Bamboo deployment with environment variable via REST API?
Asked by Ihar Hukouski:

I need to trigger deployment with defining deployment environment variables. Is it possible? I tried this but it does not work for my case. Thanks in advance

curl -X POST 'http://localhost:9087/bamboo/rest/api/latest/queue/deployment/?environmentId=1234567\&versionId=12121212\&bamboo.variable.myvariablename=value'


Answers:
author: Daniel Santos
body: Hello folks,

Until this moment (Bamboo version 6.8.0) It is not possible to set/update custom variables for a deployment using REST API. We do have a feature request to cover this scenario here:

* [\[BAM-18838\] Custom Variables in /queue/deployment REST call - Create and track feature requests for Atlassian products.](https://jira.atlassian.com/browse/BAM-18838?_ga=2.167225784.782848.1555936486-786032478.1555527911)

As a workaround, the inject variables task can be used to consume custom variable values from a file in the build working directory.

I hope that helps.


author: Daniel Santos
body: I know this request is a bit old, but I would like share that this is the right way of doing it.  
We would need the Bamboo version and the returned error to investigate why it was failing.

I just run the same test on 6.6.2 (I know it is pretty new) and it works just fine:

```
curl -u <USER>:<PASSWORD> -X POST '<BAMBOO_URL>/rest/api/latest/queue/deployment/?environmentId=1441793&versionId=1540097&bamboo.community=hello'
```

Example of successful server answer:

```
{"deploymentResultId":1671170,"link":{"href":"<BAMBOO_URL>/rest/api/latest/deploy/result/1671170","rel":"self"}}
```

comments: author: ishan_walawalkar
body: Hi Daniel,

We are using same rest API . But getting below error ,

\<?xml version="1.0" encoding="UTF-8" standalone="yes"?\>  
\<status\>  
\<status-code\>404\</status-code\>  
\<message\>null for uri: [http://192.168.2.67:8085/rest/api/latest/queue/deployment\</message](http://192.168.2.67:8085/rest/api/latest/queue/deployment%3C/message)\>  
\</status\>

Can you please help me?


author: Daniel Santos
body: Hey [@ishan_walawalkar](/t5/user/viewprofilepage/user-id/1878347),

<br />

Can you share the full URL used including its parameters?  
The 404 error might happen when the request is malformed.  

Can you also share what version of Bamboo is this?  
Are you using Curl for your request as shared above?


author: ishan_walawalkar
body: Hi Daniel,

Thanks for your quick response . I was using older version of bamboo hence getting error. I have upgraded now . Its working.


author: kishorereddymannem
body: HI Daniel/Ishan,

POst request is working but I am not getting variable value that is passed as query string.Do you know what might be the problem?

http://localhost:8085/rest/api/latest/queue/deployment?environmentId=9437188\&versionId=9732100\&bamboo.testVariable=fromrest1

Regards

Kishore


author: Daniel Santos
body: Hi [@musei_ki](/t5/user/viewprofilepage/user-id/2706200)

I apologize for the confusion I made in this thread. Somehow my test was mistaken. The post will work but the variable will not change its value.

There is a feature request for this [\[BAM-18838\] Custom Variables in /queue/deployment REST call](https://jira.atlassian.com/browse/BAM-18838?_ga=2.206546965.782848.1555936486-786032478.1555527911) and the workaround is to use the inject variables task or use the UI.

I'll create a new message in this post so other users don't get into this trap. Somehow [@ishan_walawalkar](/t5/user/viewprofilepage/user-id/1878347) also did not notice that this variable update is not working, confirming my wrong conclusion.


Tags: developer

rest-api