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
Krishna
4 years agoValued Contributor
RESTAPI from HCM Cloud
Hi - I have created a routine in Connector Rule to fetch the Worker data from HCM and I was able to assign it to a variables and able to print it successfully.
My question is below
1. How I can assign the variables to the List because I am trying to use this connector rule in Data Source and trying to bring the data to the OS stage Area ? is it possible, My function return type is task for the RESTAPI call.
2. Or I can create a Extender Rule and create a Table in the Backend and import into the table and create an another connector rule to bring it to the stage.
Any suggestion would be appreciated.
Thanks
Krishna
17 Replies
- LeeBContributor III
Hi Krishna,
You would typically parse the results from the API into a DataTable and then use api.Parser.ProcessDataTable to populate Stage.
You will need to use different approaches to populate the DataTable depending on the format of the data e.g. for JSON use the Newtonsoft framework.
Lee
- KrishnaValued Contributor
Thanks Lee. I am using NewtonSoft Framework let me try this approach and update the results.
Krishna
- Sai_MagantiContributor II
Also check this post. There is an example in that post.
https://community.onestreamsoftware.com/t5/Rules/REST-API-USE/m-p/3761#M158
- KrishnaValued Contributor
Thanks Sai. Let me go through the BR and update you.
Krishna
- ckattookaranValued Contributor
Sai, your BR is not doing any filtering, or did I miss that part?
- Sai_MagantiContributor II
All I understood about the OPs post was how to get data from an api call and use it in a data source. Not sure if the OP wanted to filter data?
- KrishnaValued Contributor
FYI - I am using the Public Async Function APIC(ByVal si As SessionInfo) As Task. As you see the return type is task for the API so I will not be able to pass this to the Get data function. I took a different route I created a Temp Table and inserted the API response into the table then I used normal SQL Connector function to bring it to the data source. This works for me and was able to lad the Employee data into the Cube. BTW thanks for your post and it was helpful.
- ckattookaranValued Contributor
I did ask around how to use the ClientFilterRequest method in the connector. However, there is nothing in the documentation around it or how to pass that to the connector rule. Maybe this is not exposed in the UI.
Long story short, I don't think you can pass a parameter or filter to the connector rule (even though a method is there).
- KrishnaValued Contributor
ClientFilterRequest - Are you referring to pass query parameters to the API ?
Thanks
- ckattookaranValued Contributor
Yup, that is part of ConnectorArgs. However, there is no way to pass it though. It is there but can't use (or I'm not sure how to use it)
- Sai_MagantiContributor II
Usually you pass the filter args while calling the BR and with in the connector BR you would use
args.ClientFilterRequest.length > 0 then
'do your filtering here. if SQL then Where predicate..if api then pass this to the querystring..- ckattookaranValued Contributor
Can you please show me where to use this? For the life of me, I cannot find a way to do it.
Related Content
- 1 year ago
- 2 years ago
- 3 years ago