
Elke REST API als bron
Yres koppelt elke REST API die JSON teruggeeft via één generiek formulier. Je geeft de basis-URL op, kiest hoe de API aanmeldt (anoniem, Basic of OAuth2 client credentials) en hoe ze pagineert, en legt per tabel het endpoint vast. Yres haalt de volledige respons op, ontleedt de JSON in je Azure SQL-database en maakt de tabel zelf aan, zonder veldmapping. Daarna volgt de gewone laadroute met historie (SCD2), klaar voor Power BI. Zo koppel je ook systemen die niet in de bronnenlijst staan.
Gaat het om één endpoint met een korte lijst die je in één rapport gebruikt, dan kan Power BI die API ook rechtstreeks aanroepen. Dat is sneller ingericht dan een datawarehouse.
Yres wordt zinvol zodra de API pagineert of tokens vereist, de JSON genest is of in de tijd verandert, je wilt bewaren hoe de gegevens er eerder uitzagen, of de API-data naast je ERP- en HR-cijfers moet staan. Dan hoef je geen eigen script te schrijven en te onderhouden.
In de meeste gevallen wel. Biedt het systeem een REST API die JSON teruggeeft, dan koppel je het met de generieke REST-koppeling; biedt het een OData-feed, dan met de OData-koppeling. Een aantal bronnen uit de lijst werkt onder water op dezelfde manier. Twijfel je of jouw API past, neem dan contact op; we kijken mee naar de documentatie.
Vier dingen, alle vier te vinden in de API-documentatie: de basis-URL, de manier van aanmelden (anoniem, Basic of OAuth2 client credentials, plus eventuele verplichte headers), de manier van pagineren met de namen van de parameters, en de endpoints die je wilt uitlezen. Heeft de API een OpenAPI-specificatie, dan neemt die het laatste punt grotendeels over.
Geneste objecten worden platgeslagen tot kolommen, tot 10 niveaus diep; address.city wordt bijvoorbeeld een eigen kolom. Een array binnen een record wordt niet uitgesplitst maar als JSON-tekst in één kolom bewaard; die werk je desgewenst later uit in een SQL-view. Kolommen en datatypes worden bepaald op de eerste 10.000 records van een respons, dus bij grote resultaten is paginatie verstandig: elke pagina wordt dan apart ontleed.
Een OData-feed beschrijft zichzelf: de service vertelt welke entiteiten en velden er zijn en geeft zelf de link naar de volgende pagina. Bij een gewone REST API bestaat die afspraak niet. Daar geef jij aan welk endpoint je leest en hoe er gepagineerd wordt, en leidt Yres de kolommen af uit de JSON die binnenkomt. Spreekt je systeem OData, kies dan de OData-koppeling.
Volledige technische beschrijving in de kennisbank →·Laatst gecontroleerd:
Gebouwd voor organisaties op Azure en Power BI. Yres koppelt je bronnen, bewaart de historie en rolt wijzigingen gecontroleerd uit, zonder handwerk.