# ORCID API

> ORCID returns public researcher profiles, works, affiliations, and funding as a workflow and API.

ORCID’s Get researcher method returns public profile, affiliation, funding, and work data from a name, ORCID iD, or profile link. Add an institution to help distinguish researchers with the same name; private entries are not included.

- Page: https://fous.com/tools/orcid
- Handle: `@orcid`
- Category: [Science](https://fous.com/tools/category/science)
- Source website: https://orcid.org
- Last verified: Sep 29, 2026

## Methods

### Get researcher

Operation `get_researcher`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get a researcher’s public ORCID profile, affiliations, funding, and up to 100 works by name or ORCID iD. An institution helps distinguish namesakes; private entries are not included.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `name` | string | no | `"Jennifer Doudna"` | Researcher’s name, ORCID iD, or ORCID profile link; for example, Jennifer Doudna. |
| `orcid_id` | string | no | `"0000-0002-1825-0097"` | ORCID iD or profile link instead of a name, for example, 0000-0002-1825-0097. |
| `institution` | string | no | `"University of Ottawa"` | Institution to distinguish people with the same name, for example, University of Cambridge. |

**Input schema**

```json
{
  "type": "object",
  "anyOf": [
    {
      "required": [
        "name"
      ]
    },
    {
      "required": [
        "orcid_id"
      ]
    }
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Researcher’s name, ORCID iD, or ORCID profile link; for example, Jennifer Doudna.",
      "examples": [
        "Jennifer Doudna",
        "John Smith"
      ]
    },
    "orcid_id": {
      "type": "string",
      "default": "",
      "description": "ORCID iD or profile link instead of a name, for example, 0000-0002-1825-0097.",
      "x-fous-developer": true,
      "examples": [
        "0000-0002-1825-0097"
      ]
    },
    "institution": {
      "type": "string",
      "default": "",
      "description": "Institution to distinguish people with the same name, for example, University of Cambridge.",
      "examples": [
        "University of Ottawa"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "orcid_id": "0000-0002-1825-0097"
    },
    {
      "name": "Jennifer Doudna"
    },
    {
      "name": "John Smith",
      "institution": "University of Ottawa"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `name` | string or null | `"Josiah Carberry"` |  |
| `works` | array |  |  |
| `works[].link` | string | `"https://doi.org/10.5555/12345680"` | Page link for this entry. |
| `works[].type` | string or null | `"journal article"` |  |
| `works[].year` | string or null | `"2012"` |  |
| `works[].title` | string or null | `"A Methodology for the Emulation of Architecture"` |  |
| `works[].journal` | string or null | `"Science"` |  |
| `works[].doi_link` | string or null | `"https://doi.org/10.5555/12345680"` |  |
| `funding` | array |  |  |
| `funding[].link` | string | `"https://orcid.org/0000-0001-9161-999X"` | Page link for this entry. |
| `funding[].title` | string or null | `"Using Cas12a2 for targeted tumor elimination"` |  |
| `funding[].funder` | string or null | `"American Cancer Society"` |  |
| `funding[].end_date` | string or null | `"2028-01-31"` |  |
| `funding[].start_date` | string or null | `"2026-02-01"` |  |
| `keywords` | array |  |  |
| `orcid_id` | string | `"0000-0002-1825-0097"` |  |
| `websites` | array |  |  |
| `websites[].link` | string | `"http://library.brown.edu/about/hay/carberry.php"` | Page link for this entry. |
| `websites[].name` | string or null | `"Brown University Page"` |  |
| `biography` | string or null |  |  |
| `education` | array |  |  |
| `education[].link` | string | `"https://orcid.org/0000-0003-1660-3511"` | Page link for this entry. |
| `education[].end_date` | string or null | `"2012-12-28"` |  |
| `education[].start_date` | string or null | `"2009-01-01"` |  |
| `education[].organisation` | string or null | `"Nova Scotia Health Authority South Western Nova Scotia"` |  |
| `education[].role_or_degree` | string or null | `"Postdoctorate of Medicine and of Philosophy, Cardiopathies"` |  |
| `employment` | array |  |  |
| `employment[].link` | string | `"https://orcid.org/0000-0002-1825-0097"` | Page link for this entry. |
| `employment[].end_date` | string or null | `"2018-10-10"` |  |
| `employment[].start_date` | string or null | `"1930-02-29"` |  |
| `employment[].organisation` | string or null | `"Wesleyan University"` |  |
| `employment[].role_or_degree` | string or null | `"Professor"` |  |
| `other_names` | array |  |  |
| `profile_link` | string | `"https://orcid.org/0000-0002-1825-0097"` |  |
| `other_matches` | array |  |  |
| `other_matches[].name` | string | `"John Smith"` |  |
| `other_matches[].institution` | string or null | `"Fluent Technology"` |  |
| `other_matches[].profile_link` | string | `"https://orcid.org/0000-0003-3474-6292"` | Page link for this entry. |

**Example input**

```json
{
  "orcid_id": "0000-0002-1825-0097"
}
```

**Example output**

```json
{
  "name": "Josiah Carberry",
  "works": [
    {
      "link": "https://doi.org/10.5555/12345680",
      "type": "journal article",
      "year": "2012",
      "title": "A Methodology for the Emulation of Architecture",
      "journal": null,
      "doi_link": "https://doi.org/10.5555/12345680"
    },
    {
      "link": "https://doi.org/10.5555/666655554444",
      "type": "journal article",
      "year": "2012",
      "title": "The Memory Bus Considered Harmful",
      "journal": null,
      "doi_link": "https://doi.org/10.5555/666655554444"
    },
    {
      "link": "https://doi.org/10.5555/987654321",
      "type": "journal article",
      "year": "2011",
      "title": "The Impact of Interactive Epistemologies on Cryptography",
      "journal": null,
      "doi_link": "https://doi.org/10.5555/987654321"
    }
  ],
  "funding": [],
  "keywords": [
    "psychoceramics",
    "ionian philology"
  ],
  "orcid_id": "0000-0002-1825-0097",
  "websites": [
    {
      "link": "http://library.brown.edu/about/hay/carberry.php",
      "name": "Brown University Page"
    },
    {
      "link": "http://en.wikipedia.org/wiki/Josiah_Carberry",
      "name": "Wikipedia Entry"
    }
  ],
  "biography": null,
  "education": [],
  "employment": [
    {
      "link": "https://orcid.org/0000-0002-1825-0097",
      "end_date": null,
      "start_date": "1930-02-29",
      "organisation": "Wesleyan University",
      "role_or_degree": "Professor"
    },
    {
      "link": "https://orcid.org/0000-0002-1825-0097",
      "end_date": null,
      "start_date": "1929-02-29",
      "organisation": "Brown University",
      "role_or_degree": "Professor"
    }
  ],
  "other_names": [
    "Josiah Stinkney Carberry",
    "J. Carberry",
    "J. S. Carberry"
  ],
  "profile_link": "https://orcid.org/0000-0002-1825-0097",
  "other_matches": []
}
```

## Quick start

Replace `YOUR_API_KEY` with a Fous API key. To create one, open Developers at the bottom of Fous Studio, turn on Developer mode, then go to API keys (https://app.fous.com/keys). Change the values in `input` to run the same tool on new data.

```bash
curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 180 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@orcid",
  "visibility": "public",
  "operation": "get_researcher",
  "version": 1,
  "input": {
    "orcid_id": "0000-0002-1825-0097"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
import json
import urllib.error
import urllib.request

api_key = "YOUR_API_KEY"

body = json.loads("{\n  \"api\": \"@orcid\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_researcher\",\n  \"version\": 1,\n  \"input\": {\n    \"orcid_id\": \"0000-0002-1825-0097\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=180) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
const apiKey = "YOUR_API_KEY";

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(180_000),
  body: JSON.stringify({
  "api": "@orcid",
  "visibility": "public",
  "operation": "get_researcher",
  "version": 1,
  "input": {
    "orcid_id": "0000-0002-1825-0097"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

## Use from an AI assistant

Connect this tool to Claude Code, Claude Desktop, Cursor, VS Code, Codex and any MCP client as its own MCP server. Each method is a typed tool whose arguments are the method’s input.

- Server URL: `https://api.fous.com/mcp/tools/orcid`
- Authorization: `Authorization: Bearer <Fous API key>`

**Tools**

- `get_researcher`: Get researcher. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `fous_get_run`: the result of a run that was still going, by its `request_id`. Free.

Claude Code:

```bash
claude mcp add --scope user --transport http fous-orcid https://api.fous.com/mcp/tools/orcid --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"
```

To give the assistant every tool, connect `https://api.fous.com/mcp`: it finds one with `fous_search_tools` and runs it with `fous_run_tool`. Setup for other clients: https://fous.com/llms-full.txt.

## Use cases

- Find researchers by name or ORCID iD
- Review a researcher’s works and journals
- Track funding awards and funders
- Compare researcher affiliations and education
- Build researcher lists by institution

## FAQ

### Can I run it with my own inputs?

Yes. Change the inputs in Studio and press Run, or send new inputs from your code, or ask a connected AI assistant.

### Can I call this ORCID tool as an API?

Yes. Send a POST request to /v1/query with your Fous API key and the inputs, and get JSON back.

### How much does it cost?

Each completed run costs 1 credit. Failed runs without a completed receipt are free; completed work can remain charged if delivery is interrupted. With pay as you go, a credit costs 1¢. Monthly plans cost less per credit.

### Do I need a ORCID account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from orcid.org when you run it. Some results are reused for up to 24 hours, and results that use your account or key are never reused. It was last verified on Sep 29, 2026.

### What works are listed for a researcher?

Get researcher returns up to 100 public works, including titles, types, years, journals, and DOI links.

### Where has a researcher worked or studied?

Get researcher returns public employment and education entries, including organizations, roles or degrees, and dates.

### What funding is listed on a researcher’s profile?

Get researcher returns public funding entries with titles, funders, and start and end dates.

## Related

- [Google Scholar API](https://fous.com/tools/google-scholar.md): Google Scholar provides papers, citing papers, ready-made citations and researcher profiles with metrics and up to 20 top-cited papers; public access may be temporarily limited.
- [Semantic Scholar API](https://fous.com/tools/semantic-scholar.md): Semantic Scholar returns paper and citation search, paper abstracts, summaries, authors and influence, plus author metrics and up to 10 top-cited papers; dates, summaries, PDFs and affiliation matches may be unavailable.
- [OpenAlex API](https://fous.com/tools/openalex.md): OpenAlex is an open catalog of scholarly research and connections, offering ranked papers and institution research summaries with annual output, leading topics, and coauthors.
- [Crossref API](https://fous.com/tools/crossref.md): Find scholarly works and format citations from their registered metadata.
- [NIH RePORTER API](https://fous.com/tools/nih-reporter.md): Public research funding and project records from the National Institutes of Health.
- [Spotify API](https://fous.com/tools/spotify.md): Spotify returns public artist profiles, album credits and ordered tracks, song details and play counts, up to 500 playlist songs, keyword results, and country-based podcast charts; dates and regional options vary.
- [Unpaywall API](https://fous.com/tools/unpaywall.md): Find free-to-read scholarly papers and their legal copies.
- [IMDb API](https://fous.com/tools/imdb.md): IMDb returns movie, TV, person, episode, chart and Parents Guide details, including available weekly rank changes; missing details are null, and unaired or unrated episodes lack ratings.
- [All Science tools](https://fous.com/tools/category/science)
