Our Indico developer built an API for us which is on his GitHub https://github.com/bkolobara/indico-mlz-export.
I don’t know how it works but hope it helps!
In the reports we built I had to combine the data from that with data from the core APIs, and it does get tricky sometimes, e.g. cross-matching non-registered contribution authors etc.