I made an achievements app using iNat api

take a look at https://forum.inaturalist.org/t/displaying-a-chronologically-sorted-life-list/65042/10. that describes logic to solve a slightly different problem, but you could tweak it to address the problem here. it’ll be more efficient than checking one taxon at a time. (note that step #1 in that logic could be replaced with a single call to /observations/taxonomy if you’re not trying to display the whole list of all species, and you would just have to sort by obs count as part of parsing the response.)

also, for your achievements page, i think you should display all the badges as soon as the user loads the page, then fill in the stats as you can get data for them. that will be a more satisfying experience for users rather than waiting for all the data to load before seeing anything, i think.

2 Likes