I'm currently doing this, by pulling data via their open REST API. Here is a link to their API documentation, which will get you started.
I have built an ETL package which dumps the data into a SQL DB and pulls down modified records every hour and updates/inserts.
I then point Power BI at the SQL tables (import) or (Direct) for live reports, using the on promise data gateway to automatically pull the most recent data when the report is loaded in PowerBi.com.
Hope this is helpful.