Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

API suddenly doesn't work

Karim.CHERIFI
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 14, 2022

Hi,

My API work fine the last week but today i can't call API JIRA (all API doesn't work).

I reset my passord, and create a new API token but no success.

 

My API : 

public HttpResponse<JsonNode> getAllUsers(String startAt, String maxResult) throws UnirestException {

String UrlRest3 = JiraUrl+ "rest/api/3/users/search";

String UrlRestComplet = UrlRest3+"?startAt="+startAt+"&maxResults="+maxResult;

HttpResponse<JsonNode> response = Unirest.get(UrlRestComplet)
.basicAuth(JiraUserMail, JiraToken)
.header("Accept", "application/json")
.asJson();

return response;

}

 

 

I have this error  : 

Exception in thread "main" com.mashape.unirest.http.exceptions.UnirestException: java.lang.RuntimeException: java.lang.RuntimeException: org.json.JSONException: A JSONArray text must start with '[' at 1 [character 2 line 1]
at com.mashape.unirest.http.HttpClientHelper.request(HttpClientHelper.java:143)
at com.mashape.unirest.request.BaseRequest.asJson(BaseRequest.java:68)
at com.ag2rlm.jira.api.JiraAPI.getAllUsers(JiraAPI.java:72)
at TestJiraAPI_GetAllUsers.main(TestJiraAPI_GetAllUsers.java:24)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: org.json.JSONException: A JSONArray text must start with '[' at 1 [character 2 line 1]

 

Thanks,

2 answers

0 votes
Footleg
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
September 14, 2023

I ran into this same problem, and debugging into the library I learned that it was because the API was not returning JSON, in my case because authentication was denied with the reason 'CAPTCHA required'. It was difficult to determine this from the error output by this Unirest call. However if you first attempt to call the API with a String response:

 

HttpResponse<String> response1 = Unirest.get(jiraServerURL + "/rest/api/2/search")
                    .basicAuth(jiraUsername, jiraPassword)
                    .header("Accept", "application/json")
                    .queryString("jql", "type = Bug AND project = ABC")
                    .asString();
then you don't get the runtime exception and can now look at the response header to learn what was actually returned by the API.
0 votes
Deleted user December 21, 2022

Hi 

 

Even I am getting the same exception

Suggest an answer

Log in or Sign up to answer
TAGS
atlassian, team '25 europe, atlassian event, barcelona 2025, jira, confluence, atlassian intelligence, rovo, ai-powered collaboration, developer tools, agile teams, digital transformation, teamwork solutions, atlassian conference, product announcements

🌆 Team '25 Europe registration is now open!

Join the largest European gathering of the Atlassian Community and reimagine what’s possible when great teams and transformative technology come together. Plus, grab your Super Fan ticket now and save over €1,000 on your pass before prices rise on 3 June.

Register now
AUG Leaders

Atlassian Community Events