How to use iNaturalist's Search URLs - wiki part 1 of 2

Your suspicion is correct. I am wanting them as if joined OR operators (thanks for giving me the correct lingo to use). The example you gave is good. I just happen to use both of those fields sometimes as a new project I am participating in requires the feeding on field. But, for instance I would like to know all of the pollinators that have been noted to be with a certain plant but know that different fields have been used. I know I can achieve this by downloading a query but it is time consuming.

Is there a way to use &taxon_name= on lifelist URL?

Here it is:

I am trying to change “taxon_id=47158” to “taxon_name=insecta”, but it returns “=full_taxonomy”.

Is there a way to search your lifelist with scientific name in URL?

Did you ever get any info on how to do this? I’m trying to figure out if there’s a way… been noticing quite a few “observations” of things like dinosaurs popping up recently.

i think you’d have the use either the Identify page or the API, but you can probably use the cs parameter to search for taxa with certain status codes like ex or extinct. (i’m not sure what the full list of such codes would be.) for example:,extinct.

i might be missing something, but just searching for the couple of codes above, it doesn’t seem like there are a lot of dinos. even this doesn’t bring back many dinos:

When doing an &unobserved_by_user_id query, is it possible to do a query for multiple users? i.e., create a list of species that have been seen by neither my friend nor I?

Here is an example where I try to search for species of Periplaneta that neither my partner nor I have seen:

As you can see, it just spits out a list of all 12 Periplaneta species currently on iNat, when I wanted it to show me the 9 species that neither of us have seen.

Welcome to the iNat Forum!

I’m not sure without trying it, but if it is going to work, the syntax should be


Just a single comma-separated list instead of two parameter instances.

If that doesn’t work, try using the user id numbers instead of user names.

I’m actually not finding this parameter described anywhere in either part of this wiki. So if it does work, we need to document it in the appropriate category I guess.

1 Like

Thanks for the reply! I tried both our usernames, then using our ID numbers instead, but without any success. It is still outputting all 12 species of Periplaneta.

This makes me think that &unobserved_by_user_id= is not actually a supported search parameter in this context, unless anyone else has better information…?

I did some experimentation. Yes, &unobserved_by_user_id= works, and yes, it does support comma-separated lists of usernames. Unfortunately, it appears to join the names with OR rather than AND, so it reports those species unobserved by either user, rather than by both users. So, I can’t see any easy way to get what @hydrophilus is looking for.

1 Like

For this specific use case, the compare-tool probably can provide you the required results.

You need to fill out three queries, one for each user name and a third one including all observations.
To enter the correct string for each query, go to the explore tab. Then, filter for the required fields (taxon, user name) and copy+paste everything of the URL after the ‘?’ into the first query field.
Then replace the user name in the next query and remove that part for the third query.

You will find that 9 species are ‘unique’, i.e. neither seen by you nor by your colleague.

Note to add: the compare tool only works when the total amount of taxa does not exceed 500.


Thanks so much, @carnifex! That’s exactly the kind of tool I was looking for.


Surprizingly, adding &endemic allows one to see endemic species (rather than using the longer &establishment_means=endemic used in lists)

So for Spain:
Or southern Africa:

Sorry: this does not work well: it includes a taxon with any status of endemic, so if I select the Cape Peninsula, then it shows endemics to the Western Cape, or South Africa, or even southern Africa.
As a rule though it should be OK for most countries: few higher than country groupings list species as endemic. So while it will work for Spain, it wont work for the Canary Islands (although if you look for those with a green E, then those are valid for your smaller area. )

How do I search for observations with an exact identification taxon (no descendants)?

@fluffyinca If I had wanted to look at observations that were at Order Passeriformes and I wanted look at observations that were identified only at that level I would put Passeriformes in the Species search and then under Filters I would select Rank as being equal at Order.

Hope this is what you are after and that it helps.
The search URL for that one is:

Thanks, but I think you slightly misunderstood my question. I want to search for observations with a particular identification, regardless of whether the Community Taxon was later updated. So something like ident_taxon_id=, except that seems to include descendant taxa as well.

Hmmm…yeah, that’s not the answer I gave…What if you just limited the identification at what ever rank you wish by the same way I mentioned?

I just did this wanting to look at only identifications of Osmia at genus level:

Is that what you want?

I don’t see a way to limit the identification itself. I can use the filters as you described, but that limits the observation taxon as normal. This URL is what I’m working with:
What I’m trying to find is any of my observations that have been identified as “State of matter Life”, but were then narrowed down to something else. The rank filter just gave me all of my observations identified as Life or to kingdom level.

I’ve got nuttin…

as far as i know, the only way for regular folks to achieve this is to use the API to effectively download all your identified observations that are not at Life, including the corresponding identifications, and then loop through the result set to find observations with identifications of Life that came before the latest identification.

why would anyone want to do this?

you can have the system return observations filtered by observer and observation taxon / rank range (as noted above), but you can’t filter for an exact identification taxon.

you can have the system return identifications filtered by exact identification taxon and an observation taxon rank range (ex., but you can’t filter by observer id.

1 Like