<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Pagination with Multiple @odata.nextLink Values in Qlik REST Connector in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2509122#M21897</link>
    <description>&lt;P&gt;Thanks for the suggestion, thats what i've implemented in Qlik and whilst it works - its still not the greatest. I would had hoped by now that Qlik would have a connector for Dynamics Business Central.&lt;/P&gt;
&lt;P&gt;Think i'm going to progress with Python for data extraction and have this run on schedule on a VM and upload as QVD to our cloud for onward use -&amp;nbsp;this seems to be the easiest and most scalable option, as it allows me to run multiple API calls in parallel.&lt;/P&gt;</description>
    <pubDate>Mon, 10 Mar 2025 19:32:49 GMT</pubDate>
    <dc:creator>jmcy2408</dc:creator>
    <dc:date>2025-03-10T19:32:49Z</dc:date>
    <item>
      <title>Pagination with Multiple @odata.nextLink Values in Qlik REST Connector</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2508856#M21892</link>
      <description>&lt;P data-start="202" data-end="223"&gt;Hello Qlik Community,&lt;/P&gt;
&lt;P data-start="225" data-end="498"&gt;I'm working on a REST API integration with &lt;STRONG data-start="268" data-end="307"&gt;Microsoft Dynamics Business Central&lt;/STRONG&gt; where I'm using a &lt;STRONG data-start="326" data-end="355"&gt;batch transaction request&lt;/STRONG&gt; to pull multiple company data in a single query for efficiency. However, I’m running into an issue with pagination in the Qlik REST Connector.&lt;/P&gt;
&lt;P data-start="500" data-end="763"&gt;The API returns multiple responses in a single call, and each response contains its own &lt;CODE data-start="588" data-end="605"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/149497"&gt;@odata&lt;/a&gt;.nextLink&lt;/CODE&gt; for pagination. I’ve tried different variations of the &lt;STRONG data-start="661" data-end="678"&gt;Next URL Path&lt;/STRONG&gt;, but so far, I haven’t been able to successfully paginate through all the responses.&lt;/P&gt;
&lt;P data-start="765" data-end="813"&gt;Here’s an example of the API response structure:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;{
  "responses": [
    {
      "body": {
        "data": [...],
        "@odata.nextLink": "https://api.businesscentral.dynamics.com/tenant/api/v2.0/companies(abe78fd7-84ab-ec11-80f1-000d3a0d0053)/generalLedgerEntries?aid=FIN&amp;amp;$skiptoken=900f4805-4147-ee11-be6d-6045bdd2c536"
      }
    },
    {
      "body": {
        "data": [...],
        "@odata.nextLink": "https://api.businesscentral.dynamics.com/tenant/api/v2.0/companies(bcfcf5d3-4c90-4dff-9b29-63d2fb95a173)/generalLedgerEntries?aid=FIN&amp;amp;$skiptoken=d235fd2f-dc57-4186-8a67-e9430b445d7c"
      }
    }
  ]
}
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As you can see, each response in the &lt;CODE data-start="1433" data-end="1444"&gt;responses&lt;/CODE&gt; array has its own &lt;CODE data-start="1463" data-end="1480"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/149497"&gt;@odata&lt;/a&gt;.nextLink&lt;/CODE&gt;, which points to the next set of data for each respective company. The URL format looks like:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;https://api.businesscentral.dynamics.com/&amp;lt;TENANT&amp;gt;/api/v2.0/companies(&amp;lt;COMPANY_ID&amp;gt;)/generalLedgerEntries?aid=FIN&amp;amp;$skiptoken=&amp;lt;TOKEN&amp;gt;&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P data-start="1716" data-end="1874"&gt;Where &lt;CODE data-start="1722" data-end="1732"&gt;&amp;lt;TENANT&amp;gt;&lt;/CODE&gt; is the tenant identifier, &lt;CODE data-start="1759" data-end="1773"&gt;&amp;lt;COMPANY_ID&amp;gt;&lt;/CODE&gt; is a unique company ID for each company in the request, and &lt;CODE data-start="1834" data-end="1843"&gt;&amp;lt;TOKEN&amp;gt;&lt;/CODE&gt; is a dynamic pagination token.&lt;/P&gt;
&lt;H3 data-start="1876" data-end="1892"&gt;My Question:&lt;/H3&gt;
&lt;UL data-start="1893" data-end="2184"&gt;
&lt;LI data-start="1893" data-end="2065"&gt;Does the Qlik REST Connector support &lt;STRONG data-start="1932" data-end="1955"&gt;multiple iterations&lt;/STRONG&gt; of the &lt;CODE data-start="1963" data-end="1980"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/149497"&gt;@odata&lt;/a&gt;.nextLink&lt;/CODE&gt; (one for each response object) during pagination in a &lt;STRONG data-start="2035" data-end="2064"&gt;batch transaction request&lt;/STRONG&gt;?&lt;/LI&gt;
&lt;LI data-start="2066" data-end="2184"&gt;If so, how do I correctly set the &lt;STRONG data-start="2102" data-end="2119"&gt;Next URL Path&lt;/STRONG&gt; to iterate over each &lt;CODE data-start="2141" data-end="2158"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/149497"&gt;@odata&lt;/a&gt;.nextLink&lt;/CODE&gt; in the &lt;CODE data-start="2166" data-end="2177"&gt;responses&lt;/CODE&gt; array?&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="2186" data-end="2233"&gt;I’ve tried the following paths without success:&lt;/P&gt;
&lt;UL data-start="2235" data-end="2407"&gt;
&lt;LI data-start="2235" data-end="2274"&gt;&lt;CODE data-start="2237" data-end="2274"&gt;root/responses/body/@odata.nextLink&lt;/CODE&gt;&lt;/LI&gt;
&lt;LI data-start="2275" data-end="2316"&gt;&lt;CODE data-start="2277" data-end="2316"&gt;root/responses/0/body/@odata.nextLink&lt;/CODE&gt;&lt;/LI&gt;
&lt;LI data-start="2317" data-end="2407"&gt;&lt;CODE data-start="2319" data-end="2358"&gt;root/responses/*/body/@odata.nextLink&lt;/CODE&gt; (which I hoped would loop through each response)&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="2469" data-end="2771"&gt;I can get this working in &lt;STRONG data-start="2495" data-end="2505"&gt;Python&lt;/STRONG&gt;, but I’d much rather have it built directly in &lt;STRONG data-start="2553" data-end="2561"&gt;Qlik&lt;/STRONG&gt;. The workaround I've developed is running it in Python, converting the results to a QVD, and then uploading that into my Qlik Cloud tenant. But ideally, I want to streamline this process and avoid the need to rely on Python.&lt;/P&gt;
&lt;P data-start="2773" data-end="2860"&gt;Has anyone encountered a similar issue or have any suggestions on how to approach this?&lt;/P&gt;
&lt;P data-start="2862" data-end="2912"&gt;Any guidance or tips would be greatly appreciated!&lt;/P&gt;
&lt;P data-start="2550" data-end="2568"&gt;Thanks in advance!&lt;/P&gt;</description>
      <pubDate>Sat, 08 Mar 2025 00:46:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2508856#M21892</guid>
      <dc:creator>jmcy2408</dc:creator>
      <dc:date>2025-03-08T00:46:24Z</dc:date>
    </item>
    <item>
      <title>Re: Pagination with Multiple @odata.nextLink Values in Qlik REST Connector</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2508906#M21894</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/153372"&gt;@jmcy2408&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;I don't think Qlik REST Connectors supports such thing. Actually, I never saw anything like this before - and I work with APIs for many years.&lt;/P&gt;
&lt;P&gt;One possible solution for that is to use While Loops that checks if nextLink is not empty together with some For Loops. Some short of recursive approach may be needed too depending on the responses from the NextLink of the first level Response.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 10 Mar 2025 03:14:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2508906#M21894</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-03-10T03:14:20Z</dc:date>
    </item>
    <item>
      <title>Re: Pagination with Multiple @odata.nextLink Values in Qlik REST Connector</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2509122#M21897</link>
      <description>&lt;P&gt;Thanks for the suggestion, thats what i've implemented in Qlik and whilst it works - its still not the greatest. I would had hoped by now that Qlik would have a connector for Dynamics Business Central.&lt;/P&gt;
&lt;P&gt;Think i'm going to progress with Python for data extraction and have this run on schedule on a VM and upload as QVD to our cloud for onward use -&amp;nbsp;this seems to be the easiest and most scalable option, as it allows me to run multiple API calls in parallel.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Mar 2025 19:32:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Pagination-with-Multiple-odata-nextLink-Values-in-Qlik-REST/m-p/2509122#M21897</guid>
      <dc:creator>jmcy2408</dc:creator>
      <dc:date>2025-03-10T19:32:49Z</dc:date>
    </item>
  </channel>
</rss>

