orcid_search function

Orcid search - more user friendly than orcid()

Orcid search - more user friendly than orcid()

orcid_search( given_name = NULL, family_name = NULL, past_inst = NULL, current_inst = NULL, affiliation_org = NULL, ringgold_org_id = NULL, grid_org_id = NULL, credit_name = NULL, other_name = NULL, email = NULL, digital_object_ids = NULL, work_title = NULL, grant_number = NULL, keywords = NULL, text = NULL, rows = 10, start = NULL, ... )

Arguments

  • given_name: (character) given name
  • family_name: (character) family name
  • past_inst: (character) past institution
  • current_inst: (character) current institution
  • affiliation_org: (character) affiliation organization name
  • ringgold_org_id: (character) ringgold organization id
  • grid_org_id: (character) grid organization id
  • credit_name: (character) credit name
  • other_name: (character) other name
  • email: (character) email
  • digital_object_ids: (character) digital object ids
  • work_title: (character) work title
  • grant_number: (character) grant number
  • keywords: (character) keywords to search. character vector, one or more keywords
  • text: (character) text to search
  • rows: (integer) number of records to return
  • start: (integer) record number to start at
  • ...: curl options passed on to crul::HttpClient

Returns

a data.frame with three columns:

  • first: given name
  • last: family name
  • orcid: ORCID identifier

If no results are found, an empty (0 rows) data.frame is returned

Details

The goal of this function is to make a human friendly way to search ORCID.

Thus, internally we map the parameters given to this function to the actual parameters that ORCID wants that are not so human friendly.

We don't include all possible fields you could search against here - for that use orcid()

Importantly, we return the first 10 results, following the default setting for the rows parameter in orcid(). You can set the rows parameter in this function to a max of 200. The maximum is an upper bound set by the ORCID API. You can get the number of results found programatically by fetching the found attribute on the ouput of this function, e.g., attr(x, "found").

Note

current_prim_inst and patent_number parameters have been removed as ORCID has removed them

How parameters are combined

We combine multiple parameters with AND, such that e.g., given_name="Jane" and family_name="Doe" gets passed to ORCID as given-names:Jane AND family-name:Doe

Examples

## Not run: orcid_search(given_name = "carl", family_name = "boettiger") orcid_search(given_name = "carl") orcid_search(given_name = "carl", rows = 2) orcid_search(keywords = c("birds", "turtles")) orcid_search(affiliation_org = '("Boston University" OR BU)') orcid_search(ringgold_org_id = '1438') orcid_search(grid_org_id = 'grid.5509.9') orcid_search(email = '*@orcid.org') orcid_search(given_name = "carl", verbose = TRUE) # get number of results found x <- orcid_search(ringgold_org_id = '1438') attr(x, "found") ## End(Not run)

References

https://members.orcid.org/api/tutorial/search-orcid-registry

See Also

orcid()

  • Maintainer: Scott Chamberlain
  • License: MIT + file LICENSE
  • Last published: 2021-01-20