ncbi-datasets-pyclient

June 23, 2026 ยท View on GitHub

NCBI Datasets is a resource that lets you easily gather data from NCBI.

The NCBI Datasets version 2 API is updated often to add new features, fix bugs, and enhance usability.

This Python package is automatically generated by the OpenAPI Generator project:

  • API version: v2
  • Package version: v18.31.0
  • Generator version: 7.23.0
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen

Requirements.

Python 3.10+

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+https://github.com/misialq/ncbi-datasets-pyclient.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/misialq/ncbi-datasets-pyclient.git)

Then import the package:

import ncbi.datasets.openapi

Setuptools

Install via Setuptools.

python setup.py install --user

(or sudo python setup.py install to install the package for all users)

Then import the package:

import ncbi.datasets.openapi

Tests

Execute pytest to run the tests.

Getting Started

Please follow the installation procedure and then run the following:


import ncbi.datasets.openapi
from ncbi.datasets.openapi.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.ncbi.nlm.nih.gov/datasets/v2
# See configuration.py for a list of all supported configuration parameters.
configuration = ncbi.datasets.openapi.Configuration(
    host = "https://api.ncbi.nlm.nih.gov/datasets/v2"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: ApiKeyAuthHeader
configuration.api_key['ApiKeyAuthHeader'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['ApiKeyAuthHeader'] = 'Bearer'


# Enter a context with an instance of the API client
with ncbi.datasets.openapi.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ncbi.datasets.openapi.BioSampleApi(api_client)
    accessions = ['SAMN15960293'] # List[str] | 

    try:
        # Get BioSample dataset reports by accession(s)
        api_response = api_instance.bio_sample_dataset_report(accessions)
        print("The response of BioSampleApi->bio_sample_dataset_report:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling BioSampleApi->bio_sample_dataset_report: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://api.ncbi.nlm.nih.gov/datasets/v2

ClassMethodHTTP requestDescription
BioSampleApibio_sample_dataset_reportGET /biosample/accession/{accessions}/biosample_reportGet BioSample dataset reports by accession(s)
GeneApidownload_gene_packageGET /gene/id/{gene_ids}/downloadGet a gene data package by GeneID
GeneApidownload_gene_package_postPOST /gene/downloadGet a gene data package
GeneApigene_chromosome_summaryGET /gene/taxon/{taxon}/annotation/{annotation_name}/chromosome_summaryGet gene counts per chromosome by taxon and annotation name
GeneApigene_counts_for_taxonGET /gene/taxon/{taxon}/countsGet gene counts by taxon
GeneApigene_counts_for_taxon_by_postPOST /gene/taxon/countsGet gene counts by taxon
GeneApigene_dataset_reportPOST /gene/dataset_reportGet a gene data report
GeneApigene_dataset_report_by_accessionGET /gene/accession/{accessions}/dataset_reportGet a gene data report by RefSeq nucleotide or protein accession
GeneApigene_dataset_report_by_tax_and_symbolGET /gene/symbol/{symbols}/taxon/{taxon}/dataset_reportGet a gene data report by symbol and taxon
GeneApigene_dataset_reports_by_idGET /gene/id/{gene_ids}/dataset_reportGet a gene data report by GeneID
GeneApigene_dataset_reports_by_locus_tagGET /gene/locus_tag/{locus_tags}/dataset_reportGet a gene data report by locus tag
GeneApigene_dataset_reports_by_taxonGET /gene/taxon/{taxon}/dataset_reportGet a gene data report by taxon
GeneApigene_download_summary_by_idGET /gene/id/{gene_ids}/download_summaryGet a download summary of a gene data package by GeneID
GeneApigene_download_summary_by_postPOST /gene/download_summaryGet a download summary of a gene data package
GeneApigene_links_by_idGET /gene/id/{gene_ids}/linksGet gene links by GeneID
GeneApigene_links_by_id_by_postPOST /gene/linksGet gene links by GeneID
GeneApigene_metadata_by_accessionGET /gene/accession/{accessions}Get gene metadata by RefSeq Accession
GeneApigene_metadata_by_postPOST /geneGet gene metadata as JSON
GeneApigene_metadata_by_tax_and_symbolGET /gene/symbol/{symbols}/taxon/{taxon}Get gene metadata by gene symbol
GeneApigene_orthologs_by_idGET /gene/id/{gene_id}/orthologsGet a gene data report for a gene ortholog set by GeneID
GeneApigene_orthologs_by_postPOST /gene/orthologsGet a gene data report for a gene ortholog set by GeneID
GeneApigene_product_reportPOST /gene/product_reportGet a gene product report
GeneApigene_product_report_by_accessionGET /gene/accession/{accessions}/product_reportGet a gene product report by RefSeq nucleotide or protein accession
GeneApigene_product_report_by_tax_and_symbolGET /gene/symbol/{symbols}/taxon/{taxon}/product_reportGet a gene product report by symbol and taxon
GeneApigene_product_reports_by_idGET /gene/id/{gene_ids}/product_reportGet a gene product report by GeneID
GeneApigene_product_reports_by_locus_tagsGET /gene/locus_tag/{locus_tags}/product_reportGet a gene product report by locus tag
GeneApigene_product_reports_by_taxonGET /gene/taxon/{taxon}/product_reportGet a gene product report by taxon
GeneApigene_reports_by_idGET /gene/id/{gene_ids}Get gene reports by GeneID
GeneApigene_reports_by_taxonGET /gene/taxon/{taxon}Get gene reports by taxonomic identifier
GenomeApiannotation_report_facets_by_accessionGET /genome/accession/{accession}/annotation_summaryGet genome annotation report summary information by genome assembly accession
GenomeApiannotation_report_facets_by_postPOST /genome/annotation_summaryGet genome annotation report summary information by genome assembly accession
GenomeApiassembly_accessions_for_sequence_accessionGET /genome/sequence_accession/{accession}/sequence_assembliesGet a genome assembly accession for a nucleotide sequence accession
GenomeApiassembly_accessions_for_sequence_accession_by_postPOST /genome/sequence_assembliesGet a genome assembly accession for a nucleotide sequence accession
GenomeApiassembly_revision_history_by_getGET /genome/accession/{accession}/revision_historyGet a revision history for a genome assembly by genome assembly accession
GenomeApiassembly_revision_history_by_postPOST /genome/revision_historyGet a revision history for a genome assembly by genome assembly accession
GenomeApicheck_assembly_availabilityGET /genome/accession/{accessions}/checkCheck the validity of a genome assembly accession
GenomeApicheck_assembly_availability_postPOST /genome/checkCheck the validity of a genome assembly accession
GenomeApicheckm_histogram_by_taxonGET /genome/taxon/{species_taxon}/checkm_histogramGet CheckM histogram data by species taxon
GenomeApicheckm_histogram_by_taxon_by_postPOST /genome/checkm_histogramGet CheckM histogram data by species taxon
GenomeApidownload_assembly_packageGET /genome/accession/{accessions}/downloadGet a genome data package by genome assembly accession
GenomeApidownload_assembly_package_postPOST /genome/downloadGet a genome data package by genome assembly accession
GenomeApidownload_genome_annotation_packageGET /genome/accession/{accession}/annotation_report/downloadGet a genome annotation data package by genome assembly accession
GenomeApidownload_genome_annotation_package_by_postPOST /genome/annotation_report/downloadGet a genome annotation data package by genome assembly accession
GenomeApigenome_annotation_download_summaryGET /genome/accession/{accession}/annotation_report/download_summaryGet a download summary (preview) of a genome annotation data package by genome assembly accession
GenomeApigenome_annotation_download_summary_by_postPOST /genome/annotation_report/download_summaryGet a download summary (preview) of a genome annotation data package by genome assembly accession
GenomeApigenome_annotation_reportGET /genome/accession/{accession}/annotation_reportGet genome annotation reports by genome assembly accession
GenomeApigenome_annotation_report_by_postPOST /genome/annotation_reportGet genome annotation reports by genome assembly accession
GenomeApigenome_dataset_reportGET /genome/accession/{accessions}/dataset_reportGet a genome assembly report by genome assembly accession
GenomeApigenome_dataset_report_by_postPOST /genome/dataset_reportGet a genome assembly report
GenomeApigenome_dataset_reports_by_assembly_nameGET /genome/assembly_name/{assembly_names}/dataset_reportGet genome assembly reports by assembly name
GenomeApigenome_dataset_reports_by_bioprojectGET /genome/bioproject/{bioprojects}/dataset_reportGet genome assembly reports by BioProject accession
GenomeApigenome_dataset_reports_by_biosample_idGET /genome/biosample/{biosample_ids}/dataset_reportGet genome assembly reports by BioSample accession
GenomeApigenome_dataset_reports_by_taxonGET /genome/taxon/{taxons}/dataset_reportGet a genome assembly report by taxon
GenomeApigenome_dataset_reports_by_wgsGET /genome/wgs/{wgs_accessions}/dataset_reportGet a genome assembly data report by WGS accession
GenomeApigenome_download_summaryGET /genome/accession/{accessions}/download_summaryGet a download summary (preview) of a genome data package by genome assembly accession
GenomeApigenome_download_summary_by_postPOST /genome/download_summaryGet a download summary (preview) of a genome data package by genome assembly accession
GenomeApigenome_links_by_accessionGET /genome/accession/{accessions}/linksGet assembly links by genome assembly accession
GenomeApigenome_links_by_accession_by_postPOST /genome/linksGet assembly links by genome assembly accession
GenomeApigenome_sequence_reportGET /genome/accession/{accession}/sequence_reportsGet a genome sequence report by genome assembly accession
GenomeApigenome_sequence_report_by_postPOST /genome/sequence_reportsGet a genome sequence report by genome assembly accession
OrganelleApidownload_organelle_packageGET /organelle/accession/{accessions}/downloadGet an organelle data package by nucleotide accession
OrganelleApidownload_organelle_package_by_postPOST /organelle/downloadGet an organelle data package
OrganelleApiorganelle_datareport_by_accessionGET /organelle/accessions/{accessions}/dataset_reportGet an organelle data report by nucleotide accession
OrganelleApiorganelle_datareport_by_postPOST /organelle/dataset_reportGet an organelle data report
OrganelleApiorganelle_datareport_by_taxonGET /organelle/taxon/{taxons}/dataset_reportGet an organelle data report by taxon
ProkaryoteApidownload_prokaryote_gene_packageGET /protein/accession/{accessions}/downloadGet a prokaryote gene data package by RefSeq protein accession
ProkaryoteApidownload_prokaryote_gene_package_postPOST /protein/accession/downloadGet a prokaryote gene data package by RefSeq protein accession
TaxonomyApidownload_taxonomy_packageGET /taxonomy/taxon/{tax_ids}/downloadGet a taxonomy data package by Taxonomy ID
TaxonomyApidownload_taxonomy_package_by_postPOST /taxonomy/downloadGet a taxonomy data package by Taxonomy ID
TaxonomyApitax_name_queryGET /taxonomy/taxon_suggest/{taxon_query}Get a list of taxonomy names and IDs by partial taxonomic name
TaxonomyApitax_name_query_by_postPOST /taxonomy/taxon_suggestGet a list of taxonomy names and IDs by partial taxonomic name
TaxonomyApitaxonomy_data_reportGET /taxonomy/taxon/{taxons}/dataset_reportGet a taxonomy data report by taxon
TaxonomyApitaxonomy_data_report_postPOST /taxonomy/dataset_reportGet a taxonomy data report by taxon
TaxonomyApitaxonomy_filtered_subtreeGET /taxonomy/taxon/{taxons}/filtered_subtreeGet a filtered taxonomic subtree by taxon
TaxonomyApitaxonomy_filtered_subtree_postPOST /taxonomy/filtered_subtreeGet a filtered taxonomic subtree by taxon
TaxonomyApitaxonomy_imageGET /taxonomy/taxon/{taxon}/imageGet a taxonomy image by taxon
TaxonomyApitaxonomy_image_metadataGET /taxonomy/taxon/{taxon}/image/metadataGet taxonomy image metadata by Taxonomy ID
TaxonomyApitaxonomy_image_metadata_postPOST /taxonomy/image/metadataGet taxonomy image metadata by Taxonomy ID
TaxonomyApitaxonomy_image_postPOST /taxonomy/imageGet a taxonomy image by taxon
TaxonomyApitaxonomy_linksGET /taxonomy/taxon/{taxon}/linksGet external links by Taxonomy ID
TaxonomyApitaxonomy_links_by_postPOST /taxonomy/linksGet external links by Taxonomy ID
TaxonomyApitaxonomy_metadataGET /taxonomy/taxon/{taxons}Use taxonomic identifiers to get taxonomic metadata
TaxonomyApitaxonomy_metadata_postPOST /taxonomyGet taxonomy metadata by taxon
TaxonomyApitaxonomy_namesGET /taxonomy/taxon/{taxons}/name_reportGet a taxonomy names report by taxon
TaxonomyApitaxonomy_names_postPOST /taxonomy/name_reportGet a taxonomy names report by taxon
TaxonomyApitaxonomy_related_idsGET /taxonomy/taxon/{tax_id}/related_idsGet child nodes, and optionally parent nodes, for a given taxon by Taxonomy ID
TaxonomyApitaxonomy_related_ids_postPOST /taxonomy/related_idsGet child nodes, and optionally parent nodes, for a given taxon by Taxonomy ID
VersionApiversionGET /versionRetrieve service version
VirusApisars2_protein_downloadGET /virus/taxon/sars2/protein/{proteins}/downloadGet a SARS-CoV-2 protein data package by protein name
VirusApisars2_protein_download_postPOST /virus/taxon/sars2/protein/downloadGet a SARS-CoV-2 protein data package
VirusApisars2_protein_summaryGET /virus/taxon/sars2/protein/{proteins}Get a download summary of a SARS-CoV-2 protein data package by protein name
VirusApisars2_protein_summary_by_postPOST /virus/taxon/sars2/proteinGet a download summary of a SARS-CoV-2 protein data package by protein name
VirusApisars2_protein_tableGET /virus/taxon/sars2/protein/{proteins}/tableGet SARS-CoV-2 protein metadata in a tabular format by protein name
VirusApivirus_accession_availabilityGET /virus/accession/{accessions}/checkCheck the validity of a virus genome nucleotide accession
VirusApivirus_accession_availability_postPOST /virus/checkCheck the validity of a virus genome nucleotide accession
VirusApivirus_annotation_reports_by_acessionsGET /virus/accession/{accessions}/annotation_reportGet a virus annotation report by nucleotide accession
VirusApivirus_annotation_reports_by_postPOST /virus/annotation_reportGet a virus annotation report
VirusApivirus_annotation_reports_by_taxonGET /virus/taxon/{taxon}/annotation_reportGet a virus annotation report by taxon
VirusApivirus_genome_downloadGET /virus/taxon/{taxon}/genome/downloadGet a virus genome data package by taxon
VirusApivirus_genome_download_accessionGET /virus/accession/{accessions}/genome/downloadGet a virus genome data package by nucleotide accession
VirusApivirus_genome_download_postPOST /virus/genome/downloadGet a virus genome data package
VirusApivirus_genome_summaryGET /virus/taxon/{taxon}/genomeGet a download summary of a virus genome data package by taxon
VirusApivirus_genome_summary_by_postPOST /virus/genomeGet a download summary of a virus genome data package
VirusApivirus_genome_tableGET /virus/taxon/{taxon}/genome/tableGet virus genome metadata in a tabular format
VirusApivirus_reports_by_acessionsGET /virus/accession/{accessions}/dataset_reportGet a virus data report by nucleotide accession
VirusApivirus_reports_by_postPOST /virusGet a virus data report
VirusApivirus_reports_by_taxonGET /virus/taxon/{taxon}/dataset_reportGet a virus data report by taxon

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

ApiKeyAuth

  • Type: API key
  • API key parameter name: api_key
  • Location: URL query string

ApiKeyAuthHeader

  • Type: API key
  • API key parameter name: api-key
  • Location: HTTP header

Author