How do I access the clientKey from the JavaScript API?

Niels Frederiksen July 10, 2017

Hi, I am creating an add-on that syncronizes data between JIRA and another project management system.

I need a way to connect the JIRA instance with the correct instance of the other project management system after the add-on has been installed so it knows which data to syncronize.

I was planning on adding a postInstall page to the add-on and then have the user submit a UUID key on that page which I could use together with the JIRA clientKey to match the instances.

The problem is I can't figure out how to access the clientKey with the JavaScript API. I have looked through the AP object and found nothing.

How do people normally connect accounts between JIRA and systems

2 answers

1 vote
Maciej Kucharek August 2, 2017

Hi Niels,

clientKey is something you can only access during the add-on instalation handshake. It is up to you to save it (along with other installation data, like shared secret) so that your add-on can use it afterwards. You will need to have some sort of a backend to do that (you cannot do that with the static add-on approach). In order to understand how the installation handshake works, I'd suggest reading up on the Authentication section in Atlassian Connect documentation.

Once you saved the installation data, you can then get the clientKey with an ajax call, but then again you'd probably want to keep the mapping between JIRA and the other system in your backend code, so there should be no need to expose it to your frontend (JS) code.

Best regards,

Maciej

0 votes
Niharika Konduri August 2, 2017
Hi,

I do a custom thing for our own use, not a plugin but wonder if this helps:

I use the AJS object with a custom ajax call to another services API to do something similar from two different JIRA servers.

With jquery:

AJS.$.ajax({
url: 'path/to/api',
data: AJS // or send part needed AJS.node.array[0].example
// other options ...
});

https://developer.atlassian.com/jiradev/jira-platform/jira-architecture/jira-templates-and-jsps/adding-javascript-to-all-pages-for-google-analytics

You can put it in the header jsp inside HTML script tags.

Suggest an answer

Log in or Sign up to answer