# HGNC Gene Symbols Scraper (`parseforge/hgnc-gene-symbols-scraper`) Actor

Query the HUGO Gene Nomenclature Committee database for approved human gene symbols, names, aliases, chromosomal location, gene family, RefSeq, Ensembl, OMIM, UniProt, and external links. Export to JSON, CSV, or Excel for bioinformatics, genomics research, and pharmaceutical pipelines.

- **URL**: https://apify.com/parseforge/hgnc-gene-symbols-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Developer tools, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $15.00 / 1,000 result items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 🧬 HGNC Gene Symbols Scraper

> 🚀 **Export approved human gene symbols in seconds.** Pull **43,000+ HGNC-approved gene records** with cross-references to Ensembl, Entrez, UniProt, OMIM, and PubMed. No API key, no registration, no manual nomenclature lookups.

> 🕒 **Last updated:** 2026-05-23 · **📊 27 fields** per record · **🧬 43,000+ genes** · **🔗 9 cross-references** · **🌍 HUGO canonical**

The **HGNC Gene Symbols Scraper** exports records from the HUGO Gene Nomenclature Committee, the official authority for assigning unique human gene symbols and names. Each record carries **27 fields** including approved symbol, full name, chromosomal location, aliases, previous symbols, gene group, status, and cross-references to **Ensembl, Entrez, UCSC, RefSeq, UniProt, OMIM, PubMed, MGD, RGD, CCDS, and Vega**. HGNC nomenclature underpins virtually every modern human-genetics database and clinical-genomics pipeline.

Coverage spans **43,000+ approved gene symbols** plus thousands of pseudogenes, withdrawn symbols, and reserved names. This Actor turns lookup-by-symbol, lookup-by-ID, and search-by-keyword into one-step exports as CSV, Excel, JSON, or XML.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Bioinformatics teams, clinical-genomics labs, pharma R&D, computational biologists, science writers, EHR vendors | Variant interpretation, gene-panel design, cross-DB joins, symbol normalization, literature mining, omics pipeline annotation |

---

### 📋 What the HGNC Scraper does

Five lookup modes in a single run:

- 🔤 **Symbol lookup.** Resolve approved symbols like `BRCA1`, `TP53`, `EGFR`, `MYC`, `AKT1`.
- 🆔 **HGNC ID lookup.** Resolve canonical HGNC IDs like `1100` or `HGNC:1100`.
- 🔗 **Entrez Gene ID lookup.** Cross-reference NCBI Entrez IDs back to HGNC records.
- 🧪 **UniProt accession lookup.** Map protein accessions like `P38398` to gene records.
- 🔍 **Free-text search.** Query across symbols, names, aliases, and previous names.

Each record includes chromosomal location, locus type and group, alias and previous symbols, gene-family group, status, approval date, last-modified timestamp, and the complete cross-reference panel.

> 💡 **Why it matters:** symbol nomenclature drifts. A gene approved as `MLL` in 2010 is now `KMT2A`. Pipelines and clinical reports that miss the update silently lose joins. This Actor returns the canonical, current HGNC record on every lookup so your annotations stay correct.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to resolve a panel of symbols into a downloadable cross-reference table._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td>maxItems</td><td>integer</td><td>10</td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
<tr><td>mode</td><td>string</td><td>"fetchBySymbol"</td><td>One of searchQuery, fetchBySymbol, fetchByHgncId, fetchByEntrezId, fetchByUniprot.</td></tr>
<tr><td>values</td><td>array</td><td>["BRCA1", "TP53", "EGFR", "MYC", "AKT1"]</td><td>Symbols, IDs, or search terms. One lookup per entry.</td></tr>
</tbody>
</table>

**Example: resolve a panel of cancer genes by approved symbol.**

```json
{
    "maxItems": 25,
    "mode": "fetchBySymbol",
    "values": ["BRCA1", "BRCA2", "TP53", "EGFR", "KRAS", "MYC", "PTEN", "APC", "RB1", "NF1"]
}
````

**Example: map UniProt accessions back to HGNC records.**

```json
{
    "maxItems": 5,
    "mode": "fetchByUniprot",
    "values": ["P38398", "P04637", "P01133"]
}
```

> ⚠️ **Good to Know:** HGNC assigns symbols for human genes only. Mouse and rat orthologs are linked via MGD and RGD cross-references inside each record, but rodent-only symbols are not in scope.

***

### 📊 Output

Each gene record contains **27 fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🆔 `hgncId` | string | `"HGNC:1100"` |
| 🔤 `symbol` | string | `"BRCA1"` |
| 📛 `name` | string | `"BRCA1 DNA repair associated"` |
| 🧬 `locusType` | string | `"gene with protein product"` |
| 🧪 `locusGroup` | string | `"protein-coding gene"` |
| 📍 `location` | string | `"17q21.31"` |
| 🔁 `aliasSymbol` | array | `["BRCC1", "PNCA4"]` |
| 🏷️ `aliasName` | array | `["Breast cancer 1, early onset"]` |
| ⏪ `prevSymbol` | array | `["BRCAI"]` |
| ⏪ `prevName` | array | `[]` |
| 👥 `geneGroup` | array | `["Ring finger proteins", "BRCT domain containing"]` |
| 🔗 `entrezId` | string | `"672"` |
| 🔗 `ensemblGeneId` | string | `"ENSG00000012048"` |
| 🔗 `ucscId` | string | `"uc002ict.5"` |
| 🔗 `refseqAccession` | array | `["NM_007294"]` |
| 🧪 `uniprotIds` | array | `["P38398"]` |
| 📚 `omimId` | array | `["113705"]` |
| 📚 `pubmedId` | array | `["2270482", "8554067"]` |
| 🐭 `mgdId` | array | `["MGI:104537"]` |
| 🐀 `rgdId` | array | `["RGD:2218"]` |
| 🧬 `ccdsId` | array | `["CCDS11456"]` |
| 🔗 `vegaId` | string | null | `"OTTHUMG00000157426"` |
| ✅ `status` | string | `"Approved"` |
| 📅 `dateApprovedReserved` | string | `"1989-06-30"` |
| 📅 `dateModified` | string | `"2024-09-12"` |
| 🗃️ `raw` | object | Full HGNC payload for that record |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-23T00:00:00.000Z"` |

#### 📦 Sample records

<details>
<summary><strong>🧬 Tumor suppressor: BRCA1 (HGNC:1100)</strong></summary>

```json
{
    "hgncId": "HGNC:1100",
    "symbol": "BRCA1",
    "name": "BRCA1 DNA repair associated",
    "locusType": "gene with protein product",
    "locusGroup": "protein-coding gene",
    "location": "17q21.31",
    "aliasSymbol": ["BRCC1", "PNCA4", "PPP1R53"],
    "aliasName": ["Breast cancer 1, early onset"],
    "prevSymbol": ["BRCAI"],
    "prevName": [],
    "geneGroup": ["Ring finger proteins", "BRCT domain containing"],
    "entrezId": "672",
    "ensemblGeneId": "ENSG00000012048",
    "ucscId": "uc002ict.5",
    "refseqAccession": ["NM_007294"],
    "uniprotIds": ["P38398"],
    "omimId": ["113705"],
    "pubmedId": ["2270482", "8554067"],
    "mgdId": ["MGI:104537"],
    "rgdId": ["RGD:2218"],
    "ccdsId": ["CCDS11456"],
    "vegaId": "OTTHUMG00000157426",
    "status": "Approved",
    "dateApprovedReserved": "1989-06-30",
    "dateModified": "2024-09-12",
    "scrapedAt": "2026-05-23T00:00:00.000Z"
}
```

</details>

<details>
<summary><strong>🧬 Oncogene: EGFR (HGNC:3236)</strong></summary>

```json
{
    "hgncId": "HGNC:3236",
    "symbol": "EGFR",
    "name": "epidermal growth factor receptor",
    "locusType": "gene with protein product",
    "locusGroup": "protein-coding gene",
    "location": "7p11.2",
    "aliasSymbol": ["ERBB", "ERBB1", "HER1"],
    "aliasName": [],
    "prevSymbol": [],
    "prevName": [],
    "geneGroup": ["Receptor tyrosine kinases"],
    "entrezId": "1956",
    "ensemblGeneId": "ENSG00000146648",
    "uniprotIds": ["P00533"],
    "omimId": ["131550"],
    "pubmedId": ["6328312"],
    "status": "Approved",
    "dateApprovedReserved": "1986-12-10",
    "dateModified": "2024-08-05",
    "scrapedAt": "2026-05-23T00:00:00.000Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🧬 | **Canonical nomenclature.** HUGO-approved symbols and names backed by 30+ years of curation. |
| 🔗 | **Nine cross-references per record.** Entrez, Ensembl, UCSC, RefSeq, UniProt, OMIM, PubMed, MGD, RGD, CCDS, Vega. |
| 🔤 | **Five lookup modes.** Symbol, HGNC ID, Entrez ID, UniProt accession, free-text search. |
| ⏪ | **Aliases and previous symbols.** Resolve historical names like `MLL` to current `KMT2A` automatically. |
| ⚡ | **Fast.** 10 lookups in seconds, hundreds in under a minute. |
| 🔁 | **Always fresh.** Pulls live HGNC records so updates appear on the next run. |
| 🚫 | **No authentication.** Works against the public HGNC data feed. No login or key needed. |

> 📊 Gene symbol consistency is one of the most under-appreciated quality signals in modern genomics. This Actor makes it trivial to enforce.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Lookups | Setup |
|---|---|---|---|---|---|
| **⭐ HGNC Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **43,000+** human genes | **Live per run** | symbol, ID, Entrez, UniProt, search | ⚡ 2 min |
| Manual HGNC web search | Free | Full | Live | One at a time | 🐢 Per-row |
| Bulk file downloads | Free | Full snapshot | Quarterly | Local parsing | ⏳ Hours |
| Generic biomedical APIs | Varies | Mixed | Mixed | Often paid | 🕒 Variable |

Pick this Actor when you want HGNC records on demand without bulk downloads or per-row clicks.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the HGNC Gene Symbols Scraper page on the Apify Store.
3. 🎯 **Set input.** Choose a mode, paste your symbols or IDs into the `values` list, and set `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor resolve every lookup.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 🧪 Clinical & Translational Genomics

- Variant interpretation pipelines with canonical symbols
- Gene-panel design and QA for diagnostics
- EHR and lab-report normalization
- Cross-DB joins from Entrez or UniProt back to HGNC

</td>
<td width="50%" valign="top">

#### 💊 Pharma & Biotech R\&D

- Target-list curation against canonical nomenclature
- Drug-target literature mining via PubMed IDs
- Multi-source omics annotation with stable IDs
- Patent and FDA filing nomenclature checks

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 🧮 Bioinformatics Pipelines

- Symbol-history normalization for legacy datasets
- RNA-seq and microarray probe-to-gene mapping
- Cross-species ortholog joins via MGD and RGD
- Pre-flight QA on submitted FASTA/GFF annotations

</td>
<td width="50%" valign="top">

#### 📰 Science Communication & EdTech

- Up-to-date gene cards for popular-science articles
- Interactive teaching tools with live HGNC data
- Database front-ends for medical education
- Symbol lookup widgets for science journalism

</td>
</tr>
</table>

***

### 🔌 Automating HGNC Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Weekly refreshes keep clinical and research databases aligned with HGNC updates automatically.

***

### 🌟 Beyond business use cases

Authoritative gene nomenclature has reach well beyond commercial pipelines. The same records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Reproducible variant calls for peer-reviewed studies
- Class assignments on gene-naming conventions
- Cross-DB join exercises for bioinformatics courses
- Citation-friendly snapshots of canonical records

</td>
<td width="50%">

#### 🎨 Personal and creative

- 23andMe and consumer-genomics result decoding
- Custom Anki decks for med-school revision
- Hobbyist family-history disease research
- Indie biotech newsletter content automation

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Rare-disease patient-advocacy gene factsheets
- Public health surveillance with canonical symbols
- Open-data biology curriculum for high schools
- Grant-proposal supporting evidence with stable IDs

</td>
<td width="50%">

#### 🧪 Experimentation

- Train LLMs on canonical biomedical vocabulary
- Build agentic tools that resolve symbol drift live
- Prototype knowledge graphs with HGNC as the spine
- Validate gene-prediction models against ground truth

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20HGNC%20Gene%20Symbols%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20HGNC%20Gene%20Symbols%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20HGNC%20Gene%20Symbols%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20HGNC%20Gene%20Symbols%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Pick a lookup mode, paste your symbols or IDs into the values list, and the Actor resolves each one against HGNC and emits a clean structured record. No browser automation, no captchas, no setup.

#### 📏 How accurate are the symbols?

HGNC is the canonical authority for human gene nomenclature. Every approved symbol is reviewed and assigned by HUGO curators. Status flags (Approved, Entry Withdrawn, Symbol Withdrawn) are surfaced on every record so you always know what you have.

#### 🔁 How often is the dataset refreshed?

HGNC updates its records continuously as new symbols are approved and existing ones are reviewed. Every run of this Actor fetches live data.

#### 🔗 Which cross-references are included?

Entrez, Ensembl, UCSC, RefSeq, UniProt, OMIM, PubMed, MGD, RGD, CCDS, and Vega. Not every cross-reference is populated for every gene; the field is an empty array when HGNC has no mapping.

#### ⏪ Can it resolve old symbols?

Yes. Run free-text search with the obsolete symbol (for example `MLL`) and the Actor returns the current approved record (`KMT2A`) along with the alias and previous-symbol arrays.

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to run this Actor on any cron interval (hourly, daily, weekly) and keep your annotation database in sync with HGNC releases.

#### ⚖️ Is this data legal to use?

HGNC data is publicly available and widely cited. Standard scholarly attribution applies; commercial pipelines and clinical tools have been using HGNC nomenclature for decades.

#### 💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small panels (10 records per run). A paid plan lifts the limit for full panel resolution and scheduling.

#### 🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, inspect the log, fix the input, and re-run. Partial datasets from failed runs are preserved.

#### 🐭 Does it return mouse or rat genes?

No, HGNC covers human genes only. The MGD and RGD ID fields cross-reference the rodent equivalents so you can follow up in those databases.

#### 🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.

***

### 🔌 Integrate with any app

HGNC Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get run notifications in your channels
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe gene records into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh HGNC records into your annotation database or alert your team in Slack on symbol updates.

***

### 🔗 Recommended Actors

- [**🩺 ClinicalTrials.gov Scraper**](https://apify.com/parseforge/clinicaltrials-gov-scraper) - Registered clinical trials worldwide
- [**📖 arXiv Scraper**](https://apify.com/parseforge/arxiv-scraper) - Open-access preprints across science
- [**🧪 OSF Scraper**](https://apify.com/parseforge/osf-scraper) - Open Science Framework projects and registrations
- [**📊 Figshare Scraper**](https://apify.com/parseforge/figshare-scraper) - Research data and figures with DOIs
- [**🌍 GBIF Biodiversity Scraper**](https://apify.com/parseforge/gbif-biodiversity-scraper) - Global biodiversity occurrence records

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more biomedical and reference-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by HGNC, HUGO, or EMBL-EBI. All trademarks mentioned are the property of their respective owners. Only publicly available gene nomenclature data is collected.

# Actor input Schema

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## `mode` (type: `string`):

Choose how to look up gene records.

## `values` (type: `array`):

Symbols, IDs, or search terms — one per array entry. Each value triggers one lookup.

## Actor input object example

```json
{
  "maxItems": 10,
  "mode": "fetchBySymbol",
  "values": [
    "BRCA1",
    "TP53",
    "EGFR",
    "MYC",
    "AKT1"
  ]
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxItems": 10,
    "mode": "fetchBySymbol",
    "values": [
        "BRCA1",
        "TP53",
        "EGFR",
        "MYC",
        "AKT1"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/hgnc-gene-symbols-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "maxItems": 10,
    "mode": "fetchBySymbol",
    "values": [
        "BRCA1",
        "TP53",
        "EGFR",
        "MYC",
        "AKT1",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/hgnc-gene-symbols-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxItems": 10,
  "mode": "fetchBySymbol",
  "values": [
    "BRCA1",
    "TP53",
    "EGFR",
    "MYC",
    "AKT1"
  ]
}' |
apify call parseforge/hgnc-gene-symbols-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/hgnc-gene-symbols-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "HGNC Gene Symbols Scraper",
        "description": "Query the HUGO Gene Nomenclature Committee database for approved human gene symbols, names, aliases, chromosomal location, gene family, RefSeq, Ensembl, OMIM, UniProt, and external links. Export to JSON, CSV, or Excel for bioinformatics, genomics research, and pharmaceutical pipelines.",
        "version": "1.0",
        "x-build-id": "HfNUCqFEprsIjdMJS"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~hgnc-gene-symbols-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-hgnc-gene-symbols-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~hgnc-gene-symbols-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-hgnc-gene-symbols-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~hgnc-gene-symbols-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-hgnc-gene-symbols-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "mode",
                    "values"
                ],
                "properties": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    },
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "searchQuery",
                            "fetchBySymbol",
                            "fetchByHgncId",
                            "fetchByEntrezId",
                            "fetchByUniprot"
                        ],
                        "type": "string",
                        "description": "Choose how to look up gene records."
                    },
                    "values": {
                        "title": "Values",
                        "type": "array",
                        "description": "Symbols, IDs, or search terms — one per array entry. Each value triggers one lookup.",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
