# iDigBio

> Search iDigBio's index of over 140 million natural history specimens from museums and herbaria: find specimens and their images by name, place, collector, institution and date, open a specimen's full record, count matching specimens and see the commonest species, places or collectors among them. No account or API key required.

App · 5 actions. Web page: https://docs.lodol.com/docs/integrations/idigbio

## Actions

### Count specimens

Count the specimen records that match, without fetching them: a quick way to track how many specimens of a species, place or collector iDigBio holds. No API key required.

**Inputs**

- Scientific name (`scientific_name`, text): Only specimens identified as this taxon, e.g. Acer rubrum. Case does not matter.
- Genus (`genus`, text): Only specimens in this genus, e.g. Acer.
- Family (`family`, text): Only specimens in this family, e.g. Sapindaceae.
- Country (`country`, text): Only specimens collected in this country, as written in English, e.g. united states or canada.
- State or province (`state_province`, text): Only specimens collected in this state or province, e.g. illinois.
- Institution code (`institution_code`, text): Only specimens held by this institution, by its code, e.g. NY (New York Botanical Garden) or MCZ.
- Collector (`collector`, text): Only specimens collected by someone with this name, e.g. a surname.
- Has images (`has_image`, true/false): Only specimens that have at least one image.
- Has coordinates (`has_coordinates`, true/false): Only specimens with a latitude and longitude.
- Collected on or after (`collected_from`, date): Only specimens collected on or after this date.
- Collected on or before (`collected_to`, date): Only specimens collected on or before this date.
- Advanced query (`query`, text): Optional. Extra conditions in iDigBio's JSON query format, for any other indexed field, e.g. {"basisofrecord": "fossilspecimen"} or {"county": "cook"}. A field may not also be set above.

**Outputs**

- `count` (number): How many specimen records match.

**Example output**

```json
{
  "count": 5008
}
```

### Get specimen

Get one specimen record by its iDigBio id: its identification, the institution holding it, where and when it was collected and its images. An unknown id comes back with 'found' set to false rather than failing the step. No API key required.

**Inputs**

- Record id (`uuid`, text, required): The specimen's iDigBio id (a UUID), e.g. from Search specimens or the record's portal page.

**Outputs**

- `basis_of_record` (text): What the record is of, e.g. 'PreservedSpecimen' or 'FossilSpecimen'.
- `catalog_number` (text): The specimen's catalogue number in that collection.
- `class` (text): Its class, e.g. 'Magnoliopsida'.
- `collection_code` (text): The code of the collection within that institution.
- `collector` (text): Who collected it.
- `country` (text): The country it was collected in.
- `country_code` (text): The country's three-letter ISO code, e.g. 'USA'.
- `county` (text): The county it was collected in.
- `event_date` (text): When it was collected, as the collection wrote it (usually YYYY-MM-DD).
- `family` (text): Its family, e.g. 'Sapindaceae'.
- `found` (true/false): True when iDigBio has a record with this id. False means it does not, and every other detail is empty.
- `genus` (text): Its genus, e.g. 'Acer'.
- `has_image` (true/false): True when it has images.
- `institution_code` (text): The code of the institution holding it, e.g. 'NY'.
- `kingdom` (text): Its kingdom, e.g. 'Plantae'.
- `last_modified` (text): When iDigBio last updated the record, ISO 8601.
- `latitude` (number): Where it was collected: latitude, when recorded.
- `locality` (text): The collection site, described in words.
- `longitude` (number): Where it was collected: longitude, when recorded.
- `media_count` (number): How many images it has.
- `media_uuids` (list): The iDigBio ids of its images.
- `order` (text): Its order, e.g. 'Sapindales'.
- `phylum` (text): Its phylum, e.g. 'Tracheophyta'.
- `portal_url` (text): The record's page on the iDigBio portal.
- `recordset_uuid` (text): The iDigBio id of the dataset the record came from.
- `scientific_name` (text): The name the specimen is identified as, as the collection wrote it, e.g. 'Acer rubrum L.'.
- `source_url` (text): The record's page on the collection's own website, when given.
- `state_province` (text): The state or province it was collected in.
- `taxon_rank` (text): The rank it is identified to, e.g. 'Species'.
- `uuid` (text): iDigBio's id for the record.
- `year` (number): The year it was collected.

**Example output**

```json
{
  "basis_of_record": "PreservedSpecimen",
  "catalog_number": "NEON04COI",
  "class": "Magnoliopsida",
  "collection_code": "TPLC-HV",
  "collector": "J.F. Webber; G.R. Clarke",
  "country": "United States",
  "country_code": "USA",
  "county": "Worcester",
  "event_date": "2020-07-30",
  "family": "Sapindaceae",
  "found": true,
  "genus": "Acer",
  "has_image": true,
  "institution_code": "NEON",
  "kingdom": "Plantae",
  "last_modified": "2026-04-23T16:45:33.446851+00:00",
  "latitude": 42.53606,
  "locality": "Domain 01, Harvard Forest site. 80m southeast of HARV_047 on the roadside",
  "longitude": -72.17522,
  "media_count": 1,
  "media_uuids": [
    "f6b352a1-b804-4dac-88aa-65532adbc734"
  ],
  "order": "Sapindales",
  "phylum": "Tracheophyta",
  "portal_url": "https://portal.idigbio.org/portal/records/78041c50-b712-4733-9ced-c042b4535cd9",
  "recordset_uuid": "fc1064ae-3eec-42d1-95f4-0ed7d4eb7444",
  "scientific_name": "Acer rubrum",
  "source_url": "https://biorepo.neonscience.org/portal/collections/individual/index.php?occid=841890",
  "state_province": "Massachusetts",
  "taxon_rank": "Species",
  "uuid": "78041c50-b712-4733-9ced-c042b4535cd9",
  "year": 2020
}
```

### Get top values

Find the commonest values of one field among the matching specimens, with how many records have each: e.g. the most collected maple species in Illinois, or the institutions that hold the most specimens of a genus. No API key required.

**Inputs**

- Field (`field`, text): The field to count values of. Defaults to scientific name. One of: `scientificname` (Scientific name), `kingdom`, `phylum`, `class`, `order`, `family`, `genus`, `country`, `stateprovince` (State or province), `county`, and 5 more.
- Number of values (`count`, number): How many values to list, 1 to 100. Defaults to 10. From 1 to 100.
- Scientific name (`scientific_name`, text): Only specimens identified as this taxon, e.g. Acer rubrum. Case does not matter.
- Genus (`genus`, text): Only specimens in this genus, e.g. Acer.
- Family (`family`, text): Only specimens in this family, e.g. Sapindaceae.
- Country (`country`, text): Only specimens collected in this country, as written in English, e.g. united states or canada.
- State or province (`state_province`, text): Only specimens collected in this state or province, e.g. illinois.
- Institution code (`institution_code`, text): Only specimens held by this institution, by its code, e.g. NY (New York Botanical Garden) or MCZ.
- Collector (`collector`, text): Only specimens collected by someone with this name, e.g. a surname.
- Has images (`has_image`, true/false): Only specimens that have at least one image.
- Has coordinates (`has_coordinates`, true/false): Only specimens with a latitude and longitude.
- Collected on or after (`collected_from`, date): Only specimens collected on or after this date.
- Collected on or before (`collected_to`, date): Only specimens collected on or before this date.
- Advanced query (`query`, text): Optional. Extra conditions in iDigBio's JSON query format, for any other indexed field, e.g. {"basisofrecord": "fossilspecimen"} or {"county": "cook"}. A field may not also be set above.

**Outputs**

- `count` (number): How many values are listed.
- `field` (text): The field that was summarised.
- `total_records` (number): How many records match the filters in all.
- `values` (list): The commonest values, most records first.

**Example output**

```json
{
  "count": 3,
  "field": "scientificname",
  "total_records": 5008,
  "values": [
    {
      "count": 813,
      "value": "acer saccharum"
    },
    {
      "count": 773,
      "value": "acer negundo"
    },
    {
      "count": 698,
      "value": "acer saccharinum"
    }
  ]
}
```

### Search specimen images

Find images of natural history specimens that match the same filters as a specimen search, with a link to each image file, its licence and the specimen it shows. No API key required.

**Inputs**

- Scientific name (`scientific_name`, text): Only specimens identified as this taxon, e.g. Acer rubrum. Case does not matter.
- Genus (`genus`, text): Only specimens in this genus, e.g. Acer.
- Family (`family`, text): Only specimens in this family, e.g. Sapindaceae.
- Country (`country`, text): Only specimens collected in this country, as written in English, e.g. united states or canada.
- State or province (`state_province`, text): Only specimens collected in this state or province, e.g. illinois.
- Institution code (`institution_code`, text): Only specimens held by this institution, by its code, e.g. NY (New York Botanical Garden) or MCZ.
- Collector (`collector`, text): Only specimens collected by someone with this name, e.g. a surname.
- Has images (`has_image`, true/false): Only specimens that have at least one image.
- Has coordinates (`has_coordinates`, true/false): Only specimens with a latitude and longitude.
- Collected on or after (`collected_from`, date): Only specimens collected on or after this date.
- Collected on or before (`collected_to`, date): Only specimens collected on or before this date.
- Advanced query (`query`, text): Optional. Extra conditions in iDigBio's JSON query format, for any other indexed field, e.g. {"basisofrecord": "fossilspecimen"} or {"county": "cook"}. A field may not also be set above.
- Number of results (`limit`, number): How many to return, 1 to 100. Defaults to 10. From 1 to 100.
- Skip (`offset`, number): How many results to skip before this page starts. Use the `next_offset` from a previous run to get the next page. From 0 to 9900.

**Outputs**

- `count` (number): How many are in this result (at most the limit).
- `media` (list): The matching images.
- `next_offset` (number): The Skip value for the next page; empty when there are no more.
- `offset` (number): How many were skipped.
- `total` (number): How many match in all.

**Example output**

```json
{
  "count": 1,
  "media": [
    {
      "access_uri": "http://www.morphbank.net?id=650196&imgType=jpeg",
      "format": "image/jpeg",
      "height": 3743,
      "license": "by-nc-sa",
      "media_type": "images",
      "portal_url": "https://portal.idigbio.org/portal/mediarecords/ed38b76f-fdcb-414b-9b70-6f51035c0c44",
      "recordset_uuid": "92e4e092-6dcb-46bc-85a0-dea8310aba45",
      "rights_owner": "unknown",
      "specimen_uuid": "040c2b62-358e-437e-96d9-f976360d9671",
      "title": "image of Acer rubrum",
      "uuid": "ed38b76f-fdcb-414b-9b70-6f51035c0c44",
      "width": 3140
    }
  ],
  "next_offset": 1,
  "offset": 0,
  "total": 13274
}
```

### Search specimens

Search over 140 million natural history specimen records from museums and herbaria by name, place, collector, institution and collection date, and get each specimen's identification, where and when it was collected, its coordinates and its images. No API key required.

**Inputs**

- Scientific name (`scientific_name`, text): Only specimens identified as this taxon, e.g. Acer rubrum. Case does not matter.
- Genus (`genus`, text): Only specimens in this genus, e.g. Acer.
- Family (`family`, text): Only specimens in this family, e.g. Sapindaceae.
- Country (`country`, text): Only specimens collected in this country, as written in English, e.g. united states or canada.
- State or province (`state_province`, text): Only specimens collected in this state or province, e.g. illinois.
- Institution code (`institution_code`, text): Only specimens held by this institution, by its code, e.g. NY (New York Botanical Garden) or MCZ.
- Collector (`collector`, text): Only specimens collected by someone with this name, e.g. a surname.
- Has images (`has_image`, true/false): Only specimens that have at least one image.
- Has coordinates (`has_coordinates`, true/false): Only specimens with a latitude and longitude.
- Collected on or after (`collected_from`, date): Only specimens collected on or after this date.
- Collected on or before (`collected_to`, date): Only specimens collected on or before this date.
- Advanced query (`query`, text): Optional. Extra conditions in iDigBio's JSON query format, for any other indexed field, e.g. {"basisofrecord": "fossilspecimen"} or {"county": "cook"}. A field may not also be set above.
- Number of results (`limit`, number): How many to return, 1 to 100. Defaults to 10. From 1 to 100.
- Skip (`offset`, number): How many results to skip before this page starts. Use the `next_offset` from a previous run to get the next page. From 0 to 9900.

**Outputs**

- `count` (number): How many are in this result (at most the limit).
- `next_offset` (number): The Skip value for the next page; empty when there are no more.
- `offset` (number): How many were skipped.
- `specimens` (list): The matching specimen records.
- `total` (number): How many match in all.

**Example output**

```json
{
  "count": 1,
  "next_offset": 1,
  "offset": 0,
  "specimens": [
    {
      "basis_of_record": "PreservedSpecimen",
      "catalog_number": "NEON04COI",
      "class": "Magnoliopsida",
      "collection_code": "TPLC-HV",
      "collector": "J.F. Webber; G.R. Clarke",
      "country": "United States",
      "country_code": "USA",
      "county": "Worcester",
      "event_date": "2020-07-30",
      "family": "Sapindaceae",
      "genus": "Acer",
      "has_image": true,
      "institution_code": "NEON",
      "kingdom": "Plantae",
      "last_modified": "2026-04-23T16:45:33.446851+00:00",
      "latitude": 42.53606,
      "locality": "Domain 01, Harvard Forest site. 80m southeast of HARV_047 on the roadside",
      "longitude": -72.17522,
      "media_count": 1,
      "media_uuids": [
        "f6b352a1-b804-4dac-88aa-65532adbc734"
      ],
      "order": "Sapindales",
      "phylum": "Tracheophyta",
      "portal_url": "https://portal.idigbio.org/portal/records/78041c50-b712-4733-9ced-c042b4535cd9",
      "recordset_uuid": "fc1064ae-3eec-42d1-95f4-0ed7d4eb7444",
      "scientific_name": "Acer rubrum",
      "source_url": "https://biorepo.neonscience.org/portal/collections/individual/index.php?occid=841890",
      "state_province": "Massachusetts",
      "taxon_rank": "Species",
      "uuid": "78041c50-b712-4733-9ced-c042b4535cd9",
      "year": 2020
    }
  ],
  "total": 32
}
```
