Forum Discussion

Sankzpower's avatar
Sankzpower
Helper I
6 years ago
Solved

Rest API - Retrieve data based on a group ID from a different URL

Hi guys

 

I am newbie here. Hope someone can shed some light.

I have got access to our online data storage platform via rest API for over 20000 records. We have got static API token for all below three URLs to retrieve data. I can confirm I can retrive data from all the below URLs.

 

1. URL - To retrieve the content, hierachy list of entire records identifiable by group ID

2. URL - To retrieve the further information such as data type, site type (can only retrive based on a id by id and does not list out all in one page. For example: If we would have to retrieve data for a certain site then you have to change the URL ending text to a specific ID that you are looking for. https://platform.xx.com/series/1ABDU,https://platform.xx.com/series/1DHFK,https://platform.xx.com/series/1XwWJ

3. URL - To retrieve the further information such as daily usage breakdown by ID. Similar to the example above in 2 - you would have to change the text of the URL to a specific one. 

 

Is there anyway, I can retrive the content (1st URL), date type, site type, daily usage breakdown (2nd and 3rd URL) 

 

Any help would be much appreciated.

Thanks

  • Thanks ICIC 

    I have found the below code working to retrive all page data without any issues. The API restricts to bring the data upto 100 rows per call. So, I had to use query to run however the condition goes on an infinite loop like you said where the query retrieves null data even there is no data found after reaching final page. Table.Remove Rows easier but the initial query is to bring in all the data until it reaches the end then table.remove rows kicks in to remove null. This process currently takes ages where I had to wait for longer to refresh. 

    However, I have found that each API call retrieves two records as attached in the Json - Items and hasMore record fields. Fortunately, this hasMore contains True or False which determines whether there are more data on the next page. I am just trying different different queries to see how this can be adjusted for example : the loop will continue to run until it hits Hasmore = False field  then query should stop retrieving data as I think this probably the solution. Any of your help would be massive !!

     

     

6 Replies

    • Sankzpower's avatar
      Sankzpower
      Helper I

      Thanks Kentyler. I have been receiving data into power BI already. The issue is that I have been having challenges in retrieving data for all records at once unless if I change and type the URL for each group ID seperately. 

    • Sankzpower's avatar
      Sankzpower
      Helper I

      Thanks ICIC 

      I have found the below code working to retrive all page data without any issues. The API restricts to bring the data upto 100 rows per call. So, I had to use query to run however the condition goes on an infinite loop like you said where the query retrieves null data even there is no data found after reaching final page. Table.Remove Rows easier but the initial query is to bring in all the data until it reaches the end then table.remove rows kicks in to remove null. This process currently takes ages where I had to wait for longer to refresh. 

      However, I have found that each API call retrieves two records as attached in the Json - Items and hasMore record fields. Fortunately, this hasMore contains True or False which determines whether there are more data on the next page. I am just trying different different queries to see how this can be adjusted for example : the loop will continue to run until it hits Hasmore = False field  then query should stop retrieving data as I think this probably the solution. Any of your help would be massive !!

       

       

      • Icey's avatar
        Icey
        Community Support

        Hi Sankzpower ,

        Glad to hear that. Please accept your solution above so that people who may have the same question can get the solution directly.

         

        Best Regards
        Icey