The OneStream Community is temporarily frozen until June 29th due to the ongoing maintenance. Please read the blog post here to learn more.
Forum Discussion
seangly
2 years agoNew Contributor III
Okta Bearer Token for API call
Hi Community,
We are trying to set up Rest API call to execute Data Management (OneStream v8.1) call from external system (e.g. Postman)
I followed the document for REST_API_Implementation_Guide.pdf and I am not able to configure the Bearer Token (we are using Okta as Single Sign-on).
This is not working, I am wondering if something need to be done on the Okta beside the steps in the document;
I've only used Azure so don't have an example. A quick google didn't seem to be super helpful but it looks like there are a few video tutorials about it.
Basically you create a new request which connects to Okta and will retrieve a new bearer token. On the test tab of that request you have your set variable command which you tried above. Most likely this bearer token will have a timelimit of say 60 minutes so you will need to run it every time you want to test things, prior to running your OneStream request.
Then on your OneStream request you will populate your bearer token variable into the bearer token field.
8 Replies
- DanielWillisValued Contributor
Which part isn't working exactly? What are you encountering?
Looking at your screenshots it kinda looks like you're trying to get a bearer token from your ExecuteStep call instead of before the ExecuteStep call?
Based on what you're doing, you should be doing a call to get the Bearer token from Okta, using your code to store it in a variable on the test tab, then using that variable in the ExecuteStep call
- seanglyNew Contributor III
Hi Daniel,
That is correct, I am doing it in the same call. I am not familiar with Postman so when you says doing a call to get the Bearer token from okta, will have a sample on the setup?
That is my missing part, getting the Bearer token before I can execute any Api to OneStream.
Regards,
Seang
- DanielWillisValued Contributor
I've only used Azure so don't have an example. A quick google didn't seem to be super helpful but it looks like there are a few video tutorials about it.
Basically you create a new request which connects to Okta and will retrieve a new bearer token. On the test tab of that request you have your set variable command which you tried above. Most likely this bearer token will have a timelimit of say 60 minutes so you will need to run it every time you want to test things, prior to running your OneStream request.
Then on your OneStream request you will populate your bearer token variable into the bearer token field.
- blakedeckardNew Contributor II
Are you using OneStream Identity Server? I believe it is required for v8+ in the cloud.
If so, you will need to create personal access tokens in OneStream and place them directly in the authorization tab in Postman.
https://documentation.onestream.com/1375907/Content/IDM/Access%20the%20Manage%20Personal%20Access%20Tokens%20Page.html
- seanglyNew Contributor III
It is a two steps process once the Okta has been configured correctly:
1. We were able to get the bearer token using the correct Okta link and save it into a variable (Postman)
2. USed that vairable in the bearer token (Authentication tab) to call OS API to execute DM job- blakedeckardNew Contributor II
Per this documentation, I believe that all customers v8 and above will use OIS, which no longer has the steps of getting the bearer token and uses the personal access token. If you are able to get bearer tokens to work on v8+, then I would be interested to know about it as this would be a deviation from my understanding.
OneStream Identity Server (OIS) Content - OneStream Community (onestreamsoftware.com)
Related Content
- 4 years ago
- 9 months ago