No authentication for the public instance. Private/institutional instances (e.g. genie.cbioportal.org) require a data access token via Authorization: Bearer <token> header.
GET https://www.cbioportal.org/api/studies/brca_tcga/clinical-data?clinicalDataType=PATIENT&attributeId=OS_STATUS&projection=SUMMARY
Patients & Samples
Method
Endpoint
Description
GET
/studies/{studyId}/patients
Patients in a study
GET
/studies/{studyId}/samples
Samples in a study
POST
/patients/fetch
Multi-study patient fetch
POST
/samples/fetch
Multi-study sample fetch
Sample Lists
Method
Endpoint
Description
GET
/studies/{studyId}/sample-lists
Predefined sample groups
GET
/sample-lists/{sampleListId}
Single sample list
Gene Panels
Method
Endpoint
Description
GET
/gene-panels
All gene panels
GET
/gene-panels/{genePanelId}
Panel details with gene list
POST
/gene-panel-data/fetch
Which panels cover which samples
Treatments
Method
Endpoint
Description
POST
/treatments/patient
Patient-level treatment data
POST
/treatments/sample
Sample-level treatment data
System
Method
Endpoint
Description
GET
/health
Server health check
GET
/info
Portal version, DB schema version
Typical Workflow
Find studies: GET /studies — browse available cancer studies, get studyId values
Get molecular profiles: GET /studies/{studyId}/molecular-profiles — find profile IDs (e.g. brca_tcga_mutations, brca_tcga_gistic)
Get sample lists: GET /studies/{studyId}/sample-lists — find sample list IDs (e.g. brca_tcga_all, brca_tcga_sequenced)
Query data: Use the profile ID and sample list ID to fetch mutations, CNA, expression, or clinical data
Rate Limits
No published rate limits. Be courteous — avoid hammering with many concurrent requests. For bulk data needs, cBioPortal offers downloadable datasets at https://docs.cbioportal.org/downloads/.
Tips
Study IDs follow a pattern: {cancer_type}_{source} (e.g. brca_tcga, luad_tcga, prad_mskcc_2017)
Molecular profile IDs extend the study ID: {studyId}_mutations, {studyId}_gistic, {studyId}_rna_seq_v2_mrna
Use projection=DETAILED to get the richest response including nested objects
POST /fetch endpoints are for batch queries across multiple studies, genes, or samples — they're the most flexible way to query
Gene lookup accepts both Hugo symbols (TP53) and Entrez IDs (7157)