Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

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
4,467,272
Community Members
 
Community Events
177
Community Groups

Could not authenticate - Using Java SDK

Hello,

  I'm testing the Opsgenie integration throught Java SDK for a customer that uses Opsgenie for Alert management. I'm using a Trial account as we use Atlassian products extensively but no OpsGenie.

  The Java SDK version I'm using is "2.11.2".

   I've created an API key, and using "https://api.eu.opsgenie.com" as RootUri.

  But I'm always receiving a "Could not authenticate", that is the same response we are receiving when using the Api key provided by the customer. The Api key has enabled all the options: Read, Create and update, Delete, Configuration Access.

  Some weeks ago, when I created the integration there was not problem in authentication, and the code is the same, but currently is not working.

 This is the integration code:

OpsGenieClient opsclient = new OpsGenieClient();
opsclient.setRootUri("https://api.eu.opsgenie.com");

AlertApi client = opsclient.alertV2();
client.getApiClient().setApiKey(getApiKey());

CreateAlertRequest request = new CreateAlertRequest();
request.setMessage(getMessage());
request.setAlias(getAlias());
request.setDescription(getDescription());
request.setUser(getUser());
for (String teamName: getTeam()) {
request.addTeamsItem(new TeamRecipient().name(teamName));
}

SuccessResponse response = null;
try {
response = client.createAlert(request);
} catch (ApiException e) {
LOGGER.error("Unexpected error sending notification", e);
}

  And the response I receive is:

13:59:32.232 [Test worker] ERROR com.nicepeopleatwork.nicemessenger.beans.OpsGenieBeanDelivery - Unexpected error sending notification
com.ifountain.opsgenie.client.swagger.ApiException: {"message":"Could not authenticate","took":0.001,"requestId":"d22b6bde-740f-4765-b5b2-3eb4da8a478a"}
at com.ifountain.opsgenie.client.swagger.ApiClient.invokeAPI(ApiClient.java:681) ~[sdk-swagger-2.11.2.jar:2.11.2]
at com.ifountain.opsgenie.client.swagger.api.AlertApi.createAlert(AlertApi.java:500) ~[sdk-swagger-2.11.2.jar:2.11.2]

  The issue can be related to using a Trial Account (I had no problems some weeks ago)? Or is related to some change in the Api? (I've double checked the examples and the code seems ok).

 

Thanks in advance!

1 answer

0 votes
Nick H Atlassian Team Apr 19, 2021

Hi @Account For Testing Service ,

Based on that error and what you shared, it sounds like the API key provided by the customer could be one from the API Key Management section.

Instead, you will want to use the API key from an API integration. Ideally a global API integration - meaning it is assigned to [No Team].

Can you try this, or have the customer share an API integration's key, and let us know if you run into the same error? Thanks!

Hi @Nick H ,

  Many thanks for the very quick response.

  Finally I managed to create and API Key from the Team Dashboards (Teams -> [Team] -> Integrations -> Add integration). With my trial account I was not able to create the key in the Opsgenie API Integration page.

  But to create the alert I also had to remove this line from my code:

client.setRootUri("https://api.eu.opsgenie.com");

   Some weeks ago, when I first developed the integration, it worked without problems. Based on documentation it can be related to the EU instance of Opsgenie.

Best regards,

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
TAGS

Atlassian Community Events