There are two very popular posts in the Tutorial section of the forum about changing the url for the iNaturalist API in order to do search queries that aren’t available in the current iNaturalist Explore page. Instead of having people manually change the url, I thought it would be simpler for users to have a website that provides more search options. iNaturalist Explorer is a site I built with some advance search features for iNaturalist data.
Search for multiple species, places, projects, and people
Add more filters
Group the filters by categories
Mobile friendly, responsive layout
Pagination for observations, species, identifiers, and observers
Show iNaturalist maps as grid, points, heatmap and taxon range
This site gets data from the iNaturalist API. As a result, the urls for the stie are compatible with iNaturalist API. You can copy and paste the query params in the URL (stuff after the ?) from the site, and use them with the iNaturalist API.
Limitations
This site is slower than the iNaturalist site. This site makes calls to iNaturalist API to get the data. Since this is static site hosted for free on Github, this site does not have the advance features of the iNaturalist site to optimize the queries.
This site does not have a login feature, which means people cannot edit iNaturalist data or view stuff that is only available to logged in uses.
Todo
Show a popup with one observation when people click on the map.
Help Needed
I built the site that allows me to search for iNaturalist records that fits my needs. I’m looking for ideas of other search queries that people wish they could do by using a website. There are a lot of options available in the iNaturalist API that are not available on the iNaturalist Explore page, but I’m not sure which of those options people would want to use.
To search for multiple taxa, enter in a taxa name into the search input, and select the desired taxa from the dropdown. Then repeat the process to get multiple taxa. You can also search for multiple places, projects, and users.
I’ve always wanted an easy button to filter only species I haven’t seen yet. I know I can edit the url, but it’s a pain in the butt to do it every time. For example, I could check the (Not Observed Button) then search a taxon like Caudata, to see which salamander species I haven’t seen yet.
The unobserved_by_user_id= in the URL search parameter is very handy, I use it a lot.
What I am looking for now is a similar functionality, but producing a list that is compared against a project’s species list, perhaps: “unobserved_by_project_id=”. Is there a way to code such a thing?
in my mind the most interesting thing would be to create a version of this for identifications rather than observations. they don’t provide map tiles for identifications though. so you’d have to jump through hurdles if you wanted to include map view.
I would like to see more functions for the lists of common names.
I live in Botswana so hava an interest in common names in various Botswana languages.
So could a facility be added so I could get lists of all taxa that have names in Tswana language or another that have names in Kalanga. Or then give a list of taxa that dont have names in Tswana in a certain area. Could the lists be created in alphabetical order of scientific name or local name for a certain group of taxa, so dictionaries can be created in any language. Thanks.
I think I understand. As it stands now, we can go to the “Taxonomy” tab on a taxon page and scroll down to see all the languages for which that taxon has a common name. But there is no way to get from there to any one language lexicon to see which taxa it contains. Is this what you are referring to?
You can use the iNaturalist site to see a lists of all taxa for a specific place in specific languages.
You can login into iNaturalist and set the languages for common names.
Account settings > Content & Display > Common Name Lexicons > select Botswana languages
Then search the observations in Botswana, and click the “Species” tab to see the species in Botswana. The common name should be shown in the Botswana languages you selected.
Add unobserved_by_user_id as requested by @deanhester94 to find species not observed by user. Filters > Users > Unobserved by user.
Add ‘Identifications’ view as requested by @pisum to show the identifications. Click ‘Identifications’ in the header.
Add ident_user_id to find observations by identifier. Filters > Users > Identified by user. Due to limitations of the iNaturalist API, only one user can be selected.
Add locale to set the common name language. Settings > Common Name Language.
Here is an example search for butterflies or dragonflies, in Los Angeles or San Diego, that are observed by hogpotato or biohexx1, and identified by nlblock.
If you search for a project, and set unobserved_by_user_id, will that give the result you want? I’m not adding new functionality to the iNaturalist API; my app uses the current options provided by the API.
this is interesting, but i was sort of envisioning an identifications page that exists parallel to your original observations page. your observations page showed observations (/observations), observed species (/observations/species_counts), observers (/observations/observers), and identifiers (/observations/identifiers). the parallel identifications page that i had in my mind would show identifications (/identifications), identified species (/identifications/species_counts), identifiers(‘identifications/identifiers’), and observers (/identifications/observers).