Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

National Center for Biotechnology Information (NCBI) Gene API

#### Options to download gene data, including the associated sequence and metadata.These gene services allow you to get gene metadata as a data report or download gene, transcript and protein sequence, and metadata, as a gene data package, for all genes in NCBI Gene.

National Center for Biotechnology Information (NCBI) Gene API is one of 14 APIs that National Center for Biotechnology Information (NCBI) publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Gene. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and rate-limit docs.

This API exposes 28 operations across 28 paths, and defines 66 schemas. It is described by OpenAPI 3.0.1, at version v2.

Requests are made against a single base URL, https://api.ncbi.nlm.nih.gov/datasets/v2.

28 operations 28 paths 66 schemas 20 GET8 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.1
API Version
v2
Base URL
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/
Authentication
API Key, API Key
Resource Areas
1

Authentication & Security 2

National Center for Biotechnology Information (NCBI) Gene API declares 2 security schemes for authenticating requests. An API key is passed in the query as api_key (ApiKeyAuth). An API key is passed in the header as api-key (ApiKeyAuthHeader). By default, every request must be authenticated.

Paths & Operations 28

Across 28 paths, the API surfaces 28 operations — 20 GET, 8 POST. Each is listed below with its method, path, parameters, and response codes.

Gene 28

Options to download gene data, including the associated sequence and metadata. These gene services allow you to get gene metadata as a data report or download gene, transcript and…

GET
/gene/id/{gene_ids}/download
Get a gene data package by GeneID
download_gene_package 6 params → default200
POST
/gene/download
Get a gene data package
download_gene_package_post 1 param body → default200
GET
/gene/id/{gene_ids}deprecated
Get gene reports by GeneID
gene_reports_by_id 11 params → default200
GET
/gene/accession/{accessions}deprecated
Get gene metadata by RefSeq Accession
gene_metadata_by_accession 11 params → default200
GET
/gene/symbol/{symbols}/taxon/{taxon}deprecated
Get gene metadata by gene symbol
gene_metadata_by_tax_and_symbol 12 params → default200
GET
/gene/taxon/{taxon}deprecated
Get gene reports by taxonomic identifier
gene_reports_by_taxon 13 params → default200
POST
/genedeprecated
Get gene metadata as JSON
gene_metadata_by_post body → default200
GET
/gene/id/{gene_ids}/dataset_report
Get a gene data report by GeneID
gene_dataset_reports_by_id 11 params → default200
GET
/gene/accession/{accessions}/dataset_report
Get a gene data report by RefSeq nucleotide or protein accession
gene_dataset_report_by_accession 11 params → default200
GET
/gene/symbol/{symbols}/taxon/{taxon}/dataset_report
Get a gene data report by symbol and taxon
gene_dataset_report_by_tax_and_symbol 11 params → default200
GET
/gene/taxon/{taxon}/dataset_report
Get a gene data report by taxon
gene_dataset_reports_by_taxon 10 params → default200
GET
/gene/locus_tag/{locus_tags}/dataset_report
Get a gene data report by locus tag
gene_dataset_reports_by_locus_tag 10 params → default200
POST
/gene/dataset_report
Get a gene data report
gene_dataset_report body → default200
GET
/gene/id/{gene_ids}/product_report
Get a gene product report by GeneID
gene_product_reports_by_id 11 params → default200
GET
/gene/accession/{accessions}/product_report
Get a gene product report by RefSeq nucleotide or protein accession
gene_product_report_by_accession 12 params → default200
GET
/gene/symbol/{symbols}/taxon/{taxon}/product_report
Get a gene product report by symbol and taxon
gene_product_report_by_tax_and_symbol 10 params → default200
GET
/gene/taxon/{taxon}/product_report
Get a gene product report by taxon
gene_product_reports_by_taxon 9 params → default200
GET
/gene/locus_tag/{locus_tags}/product_report
Get a gene product report by locus tag
gene_product_reports_by_locus_tags 10 params → default200
POST
/gene/product_report
Get a gene product report
gene_product_report body → default200
GET
/gene/id/{gene_ids}/download_summary
Get a download summary of a gene data package by GeneID
gene_download_summary_by_id 7 params → default200
POST
/gene/download_summary
Get a download summary of a gene data package
gene_download_summary_by_post body → default200
GET
/gene/taxon/{taxon}/counts
Get gene counts by taxon
gene_counts_for_taxon 1 param → default200
POST
/gene/taxon/counts
Get gene counts by taxon
gene_counts_for_taxon_by_post body → default200
GET
/gene/id/{gene_id}/orthologs
Get a gene data report for a gene ortholog set by GeneID
gene_orthologs_by_id 5 params → default200
POST
/gene/orthologs
Get a gene data report for a gene ortholog set by GeneID
gene_orthologs_by_post body → default200
GET
/gene/id/{gene_ids}/links
Get gene links by GeneID
gene_links_by_id 1 param → default200
POST
/gene/links
Get gene links by GeneID
gene_links_by_id_by_post body → default200
GET
/gene/taxon/{taxon}/annotation/{annotation_name}/chromosome_summary
Get gene counts per chromosome by taxon and annotation name
gene_chromosome_summary 2 params → default200

Schemas 66

The contract defines 66 schemas that model the data the API accepts and returns. The most detailed are v2reportsGeneDescriptor (28 properties), v2GeneDatasetReportsRequest (16 properties), v2reportsProductDescriptor (12 properties), v2GeneDatasetRequest (9 properties). Each schema is shown below with its type and property counts.

v2GeneDatasetRequestContentType
string
v2OrthologRequestContentType
string
v2DownloadSummaryDehydrated
object
4 properties
v2reportsWarning
object
5 properties
v2reportsTranscript
object
9 properties
v2reportsOrientation
string
v2GeneCountsByTaxonReply
object
1 property
v2reportsTranscriptTranscriptType
string
v2reportsGeneSummary
object
3 properties
v2GeneLinksReply
object
1 property
v2DownloadSummaryFileSummary
object
2 properties
v2reportsGeneOntology
object
4 properties
v2reportsMapLocation
object
2 properties
v2reportsErrorGeneErrorCode
string
v2GeneDatasetRequest
object
9 properties
v2SortField
object
2 properties
v2reportsProcessMetadata
object
5 properties
v2GeneChromosomeSummaryReply
object
1 property
v2reportsTranscriptTypeCount
object
2 properties
v2reportsGeneType
string
v2DownloadSummaryAvailableFiles
object
9 properties
v2GeneLinksReplyGeneLinkType
string
v2GeneDatasetRequestGeneDatasetReportType
string
v2GeneCountsByTaxonRequest
object
1 property
v2DownloadSummary
object
8 properties
v2reportsRnaType
string
v2reportsErrorAssemblyErrorCode
string
v2reportsRange
object
5 properties
v2reportsGeneDescriptor
object
28 properties
v2reportsErrorVirusErrorCode
string
v2reportsGeneReportMatch
object
6 properties
v2IncludeTabularHeader
string
v2reportsErrorTaxonomyErrorCode
string
v2reportsGeneDataReportPage
object
4 properties
rpcStatus
object
3 properties
v2reportsTranscriptSelectCategory
string
v2GeneDatasetReportsRequest
object
16 properties
v2Fasta
string
v2reportsError
object
8 properties
v2GeneType
string
v2GeneDatasetReportsRequestSymbolsForTaxon
object
2 properties
v2reportsProductDescriptor
object
12 properties
v2reportsGenomicLocation
object
4 properties
v2reportsGenomicRegion
object
2 properties
v2reportsGenomicRegionGenomicRegionType
string
v2GeneChromosomeSummaryReplyGeneChromosomeSummary
object
3 properties
v2GeneCountsByTaxonReplyGeneTypeAndCount
object
2 properties
v2GeneDatasetReportsRequestContentType
string
v2reportsMaturePeptide
object
3 properties
v2DownloadSummaryHydrated
object
3 properties
v2reportsNomenclatureAuthority
object
2 properties
v2reportsMessage
object
2 properties
v2reportsSeqRangeSet
object
2 properties
v2OrthologRequest
object
5 properties
v2reportsWarningGeneWarningCode
string
v2reportsMapLocationMapType
string
v2reportsErrorOrganelleErrorCode
string
v2reportsProtein
object
6 properties
v2reportsReference
object
1 property
v2reportsGeneGroup
object
2 properties
v2reportsAnnotation
object
5 properties
v2GeneLinksReplyGeneLink
object
4 properties
v2SortDirection
string
protobufAny
object
2 properties
v2GeneLinksRequest
object
1 property
v2reportsWarningReplacedId
object
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

ncbi-gene-api-openapi.yml Raw ↑

Other APIs National Center for Biotechnology Information (NCBI) publishes across the network.

NCBI Entrez E-utilities API
NCBI BLAST URL API
PubChem PUG REST API
PMC Open Access API (OA Service)
PMC ID Converter API
PMC OAI-PMH Service
National Center for Biotechnology Information (NCBI) BioSample API
National Center for Biotechnology Information (NCBI) Genome API
National Center for Biotechnology Information (NCBI) Organelle API
National Center for Biotechnology Information (NCBI) Prokaryote API
National Center for Biotechnology Information (NCBI) Taxonomy API
National Center for Biotechnology Information (NCBI) Version API