NCI GDC Cases Scraper
Pricing
from $7.50 / 1,000 results
NCI GDC Cases Scraper
Collects cancer case records from the NCI Genomic Data Commons API, filtered by project ID or primary site, and returns each case as a flat row with clinical identifiers, demographics, and biospecimen counts.
Pricing
from $7.50 / 1,000 results
Rating
0.0
(0)
Developer
Acquisition Automation Co.
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share

๐งฌ NCI GDC Cases Scraper
Export cancer case records from the National Cancer Institute's Genomic Data Commons as flat rows: case ID, submitter ID, project, primary site, disease type, race, age at diagnosis and how many diagnoses the case carries. No API key, no registration, no login.
The GDC holds the case records behind TCGA, TARGET and the other NCI programs. The portal shows them as a faceted browser and the API answers in nested JSON, so counting cases by project or primary site means either clicking through facets or writing a client. This Actor queries the API, flattens each case to one row, and writes a dataset you can open in a spreadsheet.
| Who uses it | What they use the cases for |
|---|---|
| ๐ฌ Cancer researchers | Pulling a cohort by project or primary site before requesting the underlying files |
| ๐งช Bioinformatics teams | Building a case index to join against GDC file and mutation data |
| ๐ฅ Clinical trial feasibility analysts | Counting how many cases a site or disease type has on record |
| ๐ผ Biotech corporate development | Sizing the public evidence base behind an oncology asset or a target company's indication |
๐ What it does
๐ก Why it matters: the first question about any cohort is how many cases there are and how they split. That answer is one run here, and a morning of facet clicking in the portal.
- ๐ฏ Filter by project.
projectIdtakes a GDC project ID such asTCGA-LUAD. - ๐ซ Or by primary site.
primarySitetakes the site as the GDC writes it, for exampleBronchus and lung. - ๐ Both identifiers on every row. The GDC
case_idUUID and the program's ownsubmitter_id, for exampleTCGA-44-3918, so rows join to anything else you hold. - ๐ Disease type, race and age at diagnosis as the GDC publishes them, with no recoding.
- ๐ A direct portal link per case, so any row can be opened and checked.
- ๐พ Exports to CSV, Excel, JSON or XML, from the run page or the API.
๐ Output
Every case is one flat row with 12 fields. null means the GDC publishes no value for that case.
| Field | Type | Description |
|---|---|---|
๐ case_id | string | GDC case UUID |
๐ submitter_id | string | The submitting program's own case identifier, for example TCGA-44-3918 |
๐ project_id | string | GDC project the case belongs to, for example TCGA-LUAD |
๐ซ primary_site | string | Primary site as the GDC writes it, for example Bronchus and lung |
๐งซ disease_type | string | Disease type, for example Adenomas and Adenocarcinomas |
๐ป gender | string | Demographic gender where the GDC publishes it. null on every row in the runs checked |
๐ง race | string | Race as recorded, for example white |
๐
ageAtDiagnosis | integer | Age at diagnosis in days, the GDC's own unit. Divide by 365.25 for years |
๐ข diagnosisCount | integer | How many diagnosis records the case carries |
๐ url | string | Direct link to the case on the GDC portal |
๐ scrapedAt | string | ISO timestamp of collection |
โ ๏ธ error | string | null on a normal row |
Example rows
{"case_id": "6e3b6b72-142d-4b8d-a462-28a205796e41","submitter_id": "TCGA-44-3918","project_id": "TCGA-LUAD","primary_site": "Bronchus and lung","disease_type": "Adenomas and Adenocarcinomas","gender": null,"race": "white","ageAtDiagnosis": 22236,"diagnosisCount": 3,"url": "https://portal.gdc.cancer.gov/cases/6e3b6b72-142d-4b8d-a462-28a205796e41","scrapedAt": "2026-09-14T17:23:10.118Z","error": null}
{"case_id": "0c0b610e-fe4c-406d-a5ed-5cc3b11dabf5","submitter_id": "TCGA-44-6146","project_id": "TCGA-LUAD","primary_site": "Bronchus and lung","disease_type": "Cystic, Mucinous and Serous Neoplasms","gender": null,"race": "white","ageAtDiagnosis": 24009,"diagnosisCount": 3,"url": "https://portal.gdc.cancer.gov/cases/0c0b610e-fe4c-406d-a5ed-5cc3b11dabf5","scrapedAt": "2026-09-14T17:23:10.210Z","error": null}
โจ Why choose this Actor
| What you get | |
|---|---|
| The NCI's own record | Rows come from the Genomic Data Commons API, not from a secondary database that mirrors it. |
| Flat instead of nested | The API returns nested case objects. Here it is one row, 12 columns, ready for a pivot table. |
| No credentials | Open GDC case metadata is public. No API key, no account, no data access request. |
| Both identifier systems | The GDC UUID and the program submitter ID on the same row, so cohorts join cleanly. |
| You pay per row | No subscription. A query that returns nothing costs nothing. |
๐ How to use it
- Create a free Apify account. New accounts start with $5 of credit.
- Open the Actor and select Try for free.
- Set
projectId, orprimarySite, or leave both empty for a general pull. - Set
maxItemsto cap the run. - Select Start, then export from the Dataset tab as CSV, Excel, JSON or XML.
A first run:
{"maxItems": 10}
One project:
{"projectId": "TCGA-LUAD","maxItems": 500}
One primary site across projects:
{"primarySite": "Bronchus and lung","maxItems": 1000}
โ๏ธ Input
| Field | Required | Description |
|---|---|---|
projectId | No | GDC project ID, for example TCGA-LUAD |
primarySite | No | Primary site as the GDC writes it, for example Bronchus and lung |
maxItems | No | How many cases to collect per run |
๐ฐ Pricing
Pay per result. No subscription, and no Apify platform usage on top.
| Apify plan | Free | Bronze | Silver | Gold | Platinum | Diamond |
|---|---|---|---|---|---|---|
| Per case row | $0.0085 | $0.00817 | $0.00783 | $0.0075 | $0.0075 | $0.0075 |
| Rows collected | Cost on the Free plan |
|---|---|
| 100 | $0.85 |
| 1,000 | $8.50 |
| 10,000 | $85.00 |
Free plan runs return a preview. Any paid Apify plan lifts the ceiling for a full run.
๐ Integrate with any app
The dataset is available through the Apify API as soon as the run finishes. Use run-sync-get-dataset-items for a one-shot call, webhooks to trigger what happens next, or the Make, Zapier, Airbyte and LangChain integrations listed on the Actor page.
๐ค Use with an AI agent
Give an agent live access to the case index over the Model Context Protocol:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=acquistion-automation/nci-gdc-cases-scraper"
Then ask it in plain language how many cases a project holds and have it read the rows back.
โ Frequently asked questions
Does this return genomic files, mutations or biospecimen records? No. It returns the case-level record: identifiers, project, primary site, disease type, the demographic fields above, age at diagnosis and a diagnosis count. Files, mutations and sample records are separate GDC endpoints that this Actor does not query.
Why is ageAtDiagnosis a five-digit number?
The GDC publishes age at diagnosis in days. 22236 is roughly 60.9 years. Divide by 365.25 after export if you want years.
Why is gender empty?
It came back null on every row in the runs checked. The field is present in the row shape, but the demographic block does not always carry it for a case.
Is any of this controlled-access data? No. These are open case metadata records, the same ones the GDC portal shows without a login. Controlled-access genomic files require dbGaP authorisation and are not reachable here.
What project IDs can I use?
Any GDC project ID, written the way the portal writes it, for example TCGA-LUAD or TARGET-AML. If a filter returns nothing, check the spelling against the portal.
What can I export? CSV, Excel, JSON and XML from the run page, or JSON straight from the API.
๐ More from Acquisition Automation Co.
- DrugBank Open Data Scraper
- IRS Exempt Organizations Scraper
- SAM.gov Contract Opportunities Scraper
- Clutch Agencies Scraper
- USCG PSIX Vessel Registry Scraper
About Acquisition Automation Co.
We build automation for people buying businesses. The repetitive part of an acquisition search, checking listings, pulling public records, tracking owners and assets, is work a machine should do, so the buyer's time goes into judging deals instead of collecting them.
We add new Actors regularly. If there is a source you need and do not see here, tell us.
๐ Support
Open an issue in the Issues tab of this Actor with your run ID, the input you used, and what you expected to get back.
โ ๏ธ Disclaimer
This Actor is independent and is not affiliated with, endorsed by, or sponsored by the National Cancer Institute, the National Institutes of Health or any government agency. It collects only publicly available data. You are responsible for using that data in compliance with the source's terms of service and applicable law. Nothing here is medical advice.