GetBearerToken ION API method
This ION API method retrieves a bearer token using SSO. It also exchanges the Mingle session for an OAuth token. This method includes a retry logic when token retrieval fails. It retries once on failure, and the error details includes the SeverID, SSO flag, token value, and the message.
Example
Parameter pattern:
0 ServerID1 UseSSO TOKEN (out)3 MESSAGE (out)
Return:
response Parameters[2]
private string getToken() {
InvokeRequestData IDORequest = new InvokeRequestData();
IDORequest.IDOName = "IONAPIMethods";
IDORequest.MethodName = "GetBearerToken";
IDORequest.Parameters.Add(serverId); // ServerID
IDORequest.Parameters.Add(sso); // UseSSO
IDORequest.Parameters.Add(IDONull.Value); //TOKEN
IDORequest.Parameters.Add(IDONull.Value); //MESSAGE
InvokeResponseData response = null;
try {
response = Context.Commands.Invoke(IDORequest);
if (response.IsReturnValueStdError()) {
throw new Exception("getToken returned StdError");
}
} catch (Exception e) {
try {
LogMessage("Failed to getToken\n" + e.Message + "\nReattempting to getToken");
response = Context.Commands.Invoke(IDORequest);
} catch (Exception e2) {
throw new Exception("Error: " + IDORequest.MethodName + "\nSSO: " + sso + "\nServerId: " + serverId + "\nToken: " + response.Parameters[2].Value + "\nMessage: " + response.Parameters[3].Value + "\n" + e.Message);
}
}
return response.Parameters[2].Value;
}