For Developers

Search

Search for people is exposed as JSON-LD documents with Cross-Origin Resource Sharing (CORS) using elements from https://schema.org as type DataFeed, OpenSearch, and W3C ActivityStreams.

Base URL
https://api.bionomia.net/users/search
?q=
single human name (required)
&families_collected=
comma-separated list of taxonomic families collected (optional)
&families_identified=
comma-separated list of taxonomic families identified (optional)
&date=
a date expressed as YYYY-MM-DD, YYYY-MM, or YYYY (optional)
&page=
page number; there is a fixed 30 items per page (optional)
&strict=
boolean for MUST (=true) vs SHOULD (=false) on families_identified, families_collected, and date when any are present (optional)
&callback=
A string to produce a JSONP response instead of a JSON-LD response (optional)
Example
https://api.bionomia.net/users/search?q=smith&families_collected=scarabaeidae&strict=true
Response
{
  "@context": {
    "@vocab": "http://schema.org",
    "opensearch": "http://a9.com/-/spec/opensearch/1.1/",
    "as": "https://www.w3.org/ns/activitystreams#"
  },
  "@type": "DataFeed",
  "opensearch:totalResults": 1,
  "opensearch:itemsPerPage": 1,
  "as:first": "https://api.bionomia.net/users/search?q=smith&families_collected=curculionidae&strict=true&page=1",
  "as:prev": null,
  "as:current": "https://api.bionomia.net/users/search?q=smith&families_collected=curculionidae&strict=true",
  "as:next": null,
  "as:last": "https://api.bionomia.net/users/search?q=smith&families_collected=curculionidae&strict=true&page=1",
  "name": "Bionomia user search results",
  "description": "Bionomia user search results expressed as a schema.org JSON-LD DataFeed.
    q={name} is a search by human name;
    families_identified={families_identified} is a comma-separated list of taxonomic families identified;
    families_collected={families_collected} is a comma-separated list of taxonomic families collected;
    date={date} is a date in the form YYYY, YYYY-MM, or YYYY-MM-DD and is compared to birth and death dates;
    page={page} is the page number and there is a fixed 30 items per page;
    strict={true|false} is a boolean for MUST vs SHOULD on families_identified, families_collected, and date",
  "license": "https://creativecommons.org/publicdomain/zero/1.0/",
  "potentialAction": {
    "@type": "SearchAction",
    "target": "https://api.bionomia.net/users/search?q={name}&families_identified={families_identified}&families_collected={families_collected}&date={date}&page={page}&strict={true|false}"
  },
  "dataFeedElement": [
    {
      "@type": "DataFeedItem",
      "item": {
        "@type": "Person",
        "@id": "https://bionomia.net/0000-0002-8059-5133",
        "name": "Andrew B.T. Smith",
        "givenName": "Andrew B.T.",
        "familyName": "Smith",
        "alternateName": [
          "Smith, Andrew B.T."
        ],
        "knowsAbout": [
          {
            "@type": "ItemList",
            "name": "families_identified",
            "itemListElement": [
              {
                "@type": "ListItem",
                "name": "Carabidae"
              }
            ]
          },
          {
            "@type": "ItemList",
            "name": "families_collected",
            "itemListElement": [
              {
                "@type": "ListItem",
                "name": "Scarabaeidae"
              },
              {
                "@type": "ListItem",
                "name": "Curculionidae"
              },
              ...
            ]
          }
        ],
        "sameAs": "https://orcid.org/0000-0002-8059-5133"
      }
    }
  ]
}