ORCID Researcher Profile Search avatar

ORCID Researcher Profile Search

Pricing

from $2.00 / 1,000 researcher fetcheds

Go to Apify Store
ORCID Researcher Profile Search

ORCID Researcher Profile Search

Search and extract detailed researcher profiles from ORCID -- the global digital identifier system used by over 18 million academic and scientific researchers worldwide. Find researchers by name, institutional affiliation, research keyword, or advanced Lucene query.

Pricing

from $2.00 / 1,000 researcher fetcheds

Rating

0.0

(0)

Developer

ryan clinton

ryan clinton

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

2 hours ago

Last modified

Share

ORCID Researcher Search

Search and extract detailed researcher profiles from ORCID -- the global digital identifier system used by over 18 million academic and scientific researchers worldwide. Find researchers by name, institutional affiliation, research keyword, or advanced Lucene query. Each result includes biographical information, employment and education history, publications, public emails, research keywords, and external identifiers. Powered by the ORCID public API v3.0 with no API key required.


  • Access the definitive researcher registry -- ORCID is the standard persistent identifier adopted by major publishers, funders, and institutions across every academic discipline.
  • No API key or account needed -- the actor uses the ORCID public API, so you can start searching immediately without any registration or credentials.
  • Get structured, normalized data -- raw ORCID API responses are deeply nested and inconsistent. This actor flattens everything into clean JSON records ready for analysis.
  • Combine with publication databases -- pair researcher profiles with paper searches from OpenAlex, PubMed, Crossref, or Semantic Scholar for comprehensive academic intelligence.
  • Automate recurring discovery -- schedule runs on Apify to monitor new researchers entering a field, track affiliation changes, or build living databases of domain experts.
  • Export in any format -- download results as JSON, CSV, or Excel directly from the Apify dataset tab, or pipe data to Google Sheets, webhooks, or downstream actors.

Key features

  • Flexible search filters -- search by family name, given names, institutional affiliation, research keyword, or any combination joined with AND logic.
  • Advanced Lucene query support -- use the free-text query field with full ORCID Lucene syntax including AND, OR, NOT operators and field-specific searches like family-name:Einstein AND affiliation-org-name:Princeton.
  • Complete profile extraction -- returns ORCID iD, full name, credit name, biography, affiliations, emails, keywords, external identifiers, works count, and direct profile URL.
  • Employment and education history -- extracts all affiliation records with organization name, role, department, start date, and end date.
  • Optional publication fetching -- enable the fetchWorks flag to retrieve each researcher's full publication list with title, journal, year, DOI, and work type.
  • External identifier capture -- collects linked identifiers such as Scopus Author ID, ResearcherID, Loop profile, Google Scholar ID, and others registered on the profile.
  • Built-in rate limiting -- 100ms delay between profile fetches ensures reliable completion without hitting ORCID API limits.
  • Up to 100 profiles per run -- retrieve between 1 and 100 detailed researcher records in a single execution.
  • Real-time data -- queries the live ORCID registry, so results always reflect the current state of each profile.

Using the Apify Console

  1. Go to ORCID Researcher Search on the Apify Store.
  2. Click Try for free to open the actor in Apify Console.
  3. Enter your search criteria -- use the Search Query field for free-text or Lucene queries, or fill in individual filter fields like Family Name, Affiliation, or Research Keyword.
  4. Optionally enable Fetch Publications to retrieve each researcher's publication list.
  5. Set Max Results (default 25, maximum 100).
  6. Click Start and wait for the run to complete.
  7. View results in the Dataset tab. Export as JSON, CSV, or Excel.

Using the Apify API or CLI

apify call ryanclinton/orcid-researcher-search \
--input='{"query": "machine learning", "maxResults": 10, "fetchWorks": true}'

Or call the actor via the REST API:

curl "https://api.apify.com/v2/acts/Nuq9OYuSRgU3DKFYz/runs?token=YOUR_API_TOKEN" \
-X POST \
-H "Content-Type: application/json" \
-d '{
"query": "machine learning",
"maxResults": 10,
"fetchWorks": true
}'

Input parameters

ParameterTypeRequiredDefaultDescription
queryStringNo"machine learning"Free-text search query. Supports ORCID Lucene syntax. Overrides individual filters when provided.
familyNameStringNo--Filter by researcher's last name (maps to family-name in ORCID).
givenNamesStringNo--Filter by researcher's first name (maps to given-names in ORCID).
affiliationStringNo--Filter by organization name (maps to affiliation-org-name in ORCID).
keywordStringNo--Filter by research keyword (maps to keyword in ORCID).
fetchWorksBooleanNofalseWhen enabled, fetches the full publication list for each researcher via an additional API call.
maxResultsIntegerNo25Maximum number of researcher profiles to return (1--100).

At least one search parameter (query, familyName, givenNames, affiliation, or keyword) must be provided.

Example input using individual filters:

{
"familyName": "Einstein",
"affiliation": "Princeton",
"fetchWorks": true,
"maxResults": 5
}

Tips:

  • When query is provided, it overrides all individual filters. Use it for complex Lucene expressions.
  • Individual filters are combined with AND logic automatically. Searching familyName: "Smith" + affiliation: "MIT" translates to family-name:Smith AND affiliation-org-name:MIT.
  • Enabling fetchWorks adds one extra API call per profile. Leave it disabled for faster runs when you only need researcher metadata.

Output

Each item in the output dataset represents one researcher profile:

{
"orcidId": "0000-0002-1825-0097",
"givenNames": "Josiah",
"familyName": "Carberry",
"creditName": "J. S. Carberry",
"biography": "Josiah Stinkney Carberry is a fictional professor known for his work in psychoceramics.",
"affiliations": [
{
"orgName": "Brown University",
"role": "Professor of Psychoceramics",
"department": "Department of Psychoceramics",
"startDate": "1929",
"endDate": null
},
{
"orgName": "Wesleyan University",
"role": null,
"department": "Department of Philosophy",
"startDate": "1925",
"endDate": "1929"
}
],
"emails": ["josiah.carberry@brown.edu"],
"keywords": ["psychoceramics", "cracked pots"],
"externalIds": [
{
"type": "Scopus Author ID",
"value": "12345678901",
"url": "https://www.scopus.com/authid/detail.uri?authorId=12345678901"
}
],
"works": [
{
"title": "Toward a Unified Theory of High-Energy Metaphysics",
"journal": "Journal of Psychoceramics",
"year": 2011,
"doi": "10.1000/xyz123",
"type": "journal-article"
}
],
"worksCount": 1,
"orcidUrl": "https://orcid.org/0000-0002-1825-0097",
"lastModified": "2024-11-15T08:22:31.000Z",
"extractedAt": "2025-06-01T14:30:00.000Z"
}

Output fields

FieldTypeDescription
orcidIdStringThe researcher's 16-digit ORCID identifier (e.g., 0000-0002-1825-0097).
givenNamesStringResearcher's first/given name(s).
familyNameStringResearcher's last/family name.
creditNameStringPublished credit name, if set by the researcher.
biographyStringFree-text biography from the researcher's profile.
affiliationsArrayEmployment and education records with orgName, role, department, startDate, endDate.
emailsArrayPublic email addresses listed on the profile.
keywordsArrayResearch keywords set by the researcher.
externalIdsArrayLinked external identifiers with type, value, and url.
worksArrayPublications with title, journal, year, doi, type (only populated when fetchWorks is enabled).
worksCountNumberTotal number of works on the profile.
orcidUrlStringDirect URL to the researcher's public ORCID profile page.
lastModifiedStringISO 8601 timestamp of when the profile was last updated.
extractedAtStringISO 8601 timestamp of when the data was extracted by this actor.

Use cases

  • Academic talent scouting -- find researchers at specific institutions who work on topics relevant to your organization's research priorities.
  • Grant application research -- identify potential collaborators or reviewers by searching for experts in a specific research domain.
  • Bibliometric analysis -- collect researcher profiles and publication counts across institutions for research productivity studies.
  • Conference speaker discovery -- search by keyword to build candidate lists of domain experts for conferences, panels, or advisory boards.
  • Institutional research profiling -- extract all researchers affiliated with a university or lab to build internal research directories.
  • Competitor intelligence -- monitor which researchers are joining or leaving specific organizations by tracking affiliation changes over time.
  • CRM enrichment -- enrich contact databases with academic credentials, publication history, and institutional affiliations for B2B outreach to research organizations.
  • Literature review preparation -- identify prolific authors in a field before diving into paper searches, then use their ORCID IDs to find all their publications.
  • Funding landscape mapping -- combine researcher profiles with grant data to understand who is active in funded research areas.
  • Research network analysis -- extract co-affiliation patterns and shared keywords to map collaboration networks across institutions.

API & integrations

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run_input = {
"query": "machine learning",
"affiliation": "Stanford University",
"fetchWorks": True,
"maxResults": 25,
}
run = client.actor("Nuq9OYuSRgU3DKFYz").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{item['givenNames']} {item['familyName']} -- {item['orcidUrl']}")
print(f" Affiliations: {len(item['affiliations'])}, Works: {item['worksCount']}")

JavaScript

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client.actor("Nuq9OYuSRgU3DKFYz").call({
query: "machine learning",
affiliation: "Stanford University",
fetchWorks: true,
maxResults: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
console.log(`${item.givenNames} ${item.familyName} -- ${item.orcidUrl}`);
});

cURL

# Start a run
curl "https://api.apify.com/v2/acts/Nuq9OYuSRgU3DKFYz/runs?token=YOUR_API_TOKEN" \
-X POST \
-H "Content-Type: application/json" \
-d '{
"familyName": "Hinton",
"keyword": "deep learning",
"fetchWorks": true,
"maxResults": 10
}'
# Fetch results from the dataset
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN&format=json"

Integration options

  • Webhooks -- trigger HTTP callbacks when a run completes to feed results into downstream pipelines.
  • Scheduled runs -- set up recurring schedules in Apify Console to periodically search for new researchers.
  • Google Sheets -- export dataset results directly to a Google Sheet for collaborative review.
  • Slack notifications -- get notified in Slack when new researcher profiles matching your criteria are found.
  • Zapier / Make -- connect to thousands of apps through Apify's integration with automation platforms.

How it works

The actor follows a two-step process to search and extract researcher profiles:

  1. Build search query -- individual filter fields (familyName, givenNames, affiliation, keyword) are mapped to ORCID's Lucene field names (family-name, given-names, affiliation-org-name, keyword) and joined with AND. If the free-text query field is provided, it overrides all individual filters.

  2. Execute search -- the query is sent to the ORCID public API v3.0 search endpoint (/v3.0/search/) with the specified result limit. The API returns a list of matching ORCID identifiers.

  3. Fetch detailed profiles -- for each ORCID ID returned by the search, the actor makes a request to the /v3.0/{orcid-id}/record endpoint to retrieve the full public profile. A 100ms delay is applied between requests for rate limiting.

  4. Extract and normalize data -- the actor parses the nested ORCID record structure to extract name, biography, affiliations (from both employment and education groups), emails, keywords, and external identifiers into a flat, consistent format.

  5. Fetch publications (optional) -- when fetchWorks is enabled, an additional request is made to /v3.0/{orcid-id}/works for each profile. Publication records are extracted with title, journal name, year, DOI, and work type.

  6. Push to dataset -- each complete researcher profile is pushed to the Apify dataset as it is processed, making partial results available before the full run completes.

Input Filters ORCID Search API Profile Fetch
+------------------+ +----------------+ +------------------+
| familyName | | | | |
| givenNames | ----> | /v3.0/search/ | ----> | /v3.0/{id}/record|
| affiliation | AND | Returns ORCID | x N | Full profile |
| keyword | query | identifiers | | per researcher |
| query (override) | | | | |
+------------------+ +----------------+ +------------------+
|
(optional) v
+------------------+
| /v3.0/{id}/works |
| Publications |
+------------------+
|
v
+------------------+
| Apify Dataset |
| Structured JSON |
+------------------+

Performance & cost

ScenarioProfilesFetch WorksApprox. TimeApprox. Cost
Quick search10No~5 seconds$0.001
Default search25No~10 seconds$0.002
Full search100No~30 seconds$0.005
With publications25Yes~20 seconds$0.003
Max with publications100Yes~60 seconds$0.01
  • The ORCID public API is completely free -- no API key, no quota, no registration required.
  • Costs reflect only Apify platform compute credits. No browser rendering is used; all requests are lightweight HTTP calls.
  • Actual times depend on ORCID API response latency and the size of individual profiles.

Limitations

  • Maximum 100 results per run -- the ORCID search API returns a maximum of 100 results per query. For broader coverage, run multiple searches with different filter combinations.
  • Public data only -- the actor accesses the ORCID public API. Any profile fields marked as private or limited-access by the researcher will not be returned.
  • Self-maintained profiles -- ORCID profiles are managed by individual researchers. Many profiles have incomplete data -- biography, email, and keywords are commonly left blank.
  • No citation counts -- ORCID does not provide citation metrics. For citation data, cross-reference results with Semantic Scholar or OpenAlex.
  • Publication metadata varies -- some works lack journal names, DOIs, or publication years depending on how the researcher entered the data.
  • Rate limiting -- the 100ms delay between requests is necessary for reliability. Removing or reducing it may cause API errors.
  • English-biased search -- ORCID's search works best with Latin-character names. Non-Latin names may require the exact character set used in the profile.

Responsible use

  • Respect researcher privacy -- only use publicly available data from ORCID profiles. Do not attempt to circumvent profile visibility settings or correlate data in ways that could compromise researcher privacy.
  • Follow ORCID terms of service -- this actor uses the ORCID public API in accordance with their terms. Do not use extracted data for spam, unsolicited bulk communication, or any purpose that violates ORCID's acceptable use policies.
  • Attribute the data source -- when publishing or sharing results derived from ORCID data, credit ORCID as the source and include the researcher's ORCID URL where appropriate.
  • Handle personal data responsibly -- researcher names, emails, and affiliations constitute personal data in many jurisdictions. Ensure your use complies with applicable data protection regulations such as GDPR.
  • Use proportional data collection -- only fetch the number of profiles you actually need. Avoid exhaustive scraping of the ORCID registry.

FAQ

Q: Do I need an ORCID API key to use this actor? A: No. This actor uses the ORCID public API v3.0, which does not require authentication. All publicly visible profile data is accessible without any API key or registration.

Q: What is the maximum number of results I can get per run? A: You can retrieve up to 100 researcher profiles per run. This is a limit of the ORCID search API. For broader searches, run multiple queries with different filter combinations.

Q: Can I search by ORCID ID directly? A: Yes. Enter the full ORCID iD (e.g., 0000-0002-1825-0097) in the Search Query field. The search will match and return that specific profile.

Q: What Lucene query syntax is supported? A: The Search Query field supports ORCID's Lucene-style query language. You can use field-specific searches like family-name:Smith, boolean operators (AND, OR, NOT), wildcards (Sm*), and parentheses for grouping. Example: family-name:Smith AND (affiliation-org-name:MIT OR affiliation-org-name:Stanford).

Q: Why are some fields null or empty? A: ORCID profiles are self-maintained by researchers. Fields like biography, email, and keywords are optional. If a researcher has not filled in a field or has set it to private, it will appear as null in the output.

Q: What is the difference between the query field and individual filters? A: Individual filters (familyName, givenNames, affiliation, keyword) are automatically mapped to ORCID field names and combined with AND logic. The query field accepts raw Lucene syntax for advanced searches. When query is provided, it overrides all individual filters.

Q: How does the fetchWorks option affect performance? A: Enabling fetchWorks adds one additional API call per researcher profile to retrieve their publication list. For 25 profiles, this roughly doubles the run time from ~10 seconds to ~20 seconds. Costs remain minimal since all calls are lightweight HTTP requests.

Q: How current is the data? A: The actor queries the live ORCID API in real time. Results reflect the current state of the registry. Each record includes a lastModified timestamp showing when the researcher last updated their profile and an extractedAt timestamp for when the data was retrieved.

Q: Can I get more than 100 results for a broad query? A: Not in a single run. However, you can break broad searches into narrower queries -- for example, search by affiliation one institution at a time, or split by keyword -- and combine the datasets afterward.

Q: What types of external identifiers are included? A: The actor extracts all external identifiers linked to the researcher's ORCID profile. Common types include Scopus Author ID, ResearcherID (Web of Science), Loop profile, Google Scholar ID, and institutional IDs. The exact identifiers depend on what the researcher has registered.

Q: Does this actor work with the ORCID Sandbox or Member API? A: No. This actor uses the ORCID public production API only. It does not access the sandbox environment or the authenticated member API.

Q: Can I schedule this actor to run automatically? A: Yes. In Apify Console, go to the actor's Schedules tab to set up recurring runs at any interval -- daily, weekly, or custom cron expressions.


ActorDescription
Semantic Scholar Paper SearchSearch the Semantic Scholar corpus for research papers with citation counts, abstracts, and author data.
OpenAlex Research Paper SearchQuery the OpenAlex database for academic papers by topic, author, institution, or journal.
PubMed Biomedical Literature SearchSearch PubMed for biomedical and life sciences research articles with abstracts and metadata.
Crossref Academic Paper SearchFind scholarly articles in the Crossref registry with DOI metadata, citations, and publisher info.
Europe PMC Literature SearchSearch the Europe PMC database for life sciences and biomedical publications from global repositories.
DBLP Publication SearchSearch the DBLP computer science bibliography for publications by author, venue, or keyword.