Ask a Question

Procedure to call a zephyr cloud api

Radiation
New Member

Procedure to call a zephyr cloud api

Hi SmartBear Team,

I am trying  a simple get request for generalinformation using the zephyr endpoint -> /public/rest/api/1.0/config/generalinformation 

The base url that I have used is -> 

 
I have got my accountId/UserId from jira.
Access Key and Secrets Key from the zephyr squad UI under the APIs keys tab.
 
I am using the below python code
 
# JWT EXPIRE how long token been to be active? 3600 == 1 hour
JWT_EXPIRE = 3600

# BASE URL for Zephyr for Jira Cloud

# RELATIVE PATH for token generation and make request to api
RELATIVE_PATH = '/public/rest/api/1.0/config/generalinformation'


print(BASE_URL+RELATIVE_PATH)


# # CANONICAL PATH (Http Method & Relative Path & Query String)
CANONICAL_PATH = 'GET&'+RELATIVE_PATH+'&'

# TOKEN HEADER: to generate jwt token
payload_token = {
'sub': ACCOUNT_ID,
'qsh': hashlib.sha256(CANONICAL_PATH.encode('utf-8')).hexdigest(),
'iss': ACCESS_KEY,
'exp': int(time.time())+JWT_EXPIRE,
'iat': int(time.time())
}

# GENERATE TOKEN
token = jwt.encode(payload_token, SECRET_KEY, algorithm='HS256').strip().decode('utf-8')

print(token)
 
# REQUEST HEADER: to create cycle
headers = {
'Authorization': 'JWT '+token,
'Content-Type': 'application/json',
'zapiAccessKey': ACCESS_KEY
}

# MAKE REQUEST:
raw_result = requests.request("GET", BASE_URL + RELATIVE_PATH, headers=headers, auth=auth)
if is_json(raw_result.text😞

# JSON RESPONSE: convert response to JSON
json_result = json.loads(raw_result.text)

# PRINT RESPONSE: pretty print with 4 indent
print(json.dumps(json_result, indent=4, sort_keys=True))

else:
print(raw_result.text)
 
 
 
 
However I am getting the below error from the server end
An internal error occurred. Please check the host product's logs.
 
And the postman says this
Radiation_0-1670585382762.png

 

Can someone from the team please help me out, with what is to be done.

0 REPLIES 0
cancel
Showing results for 
Search instead for 
Did you mean: