Welcome to htsget’s documentation!

This package is a client implementation of the GA4GH htsget protocol. It provides a simple and reliable way to retrieve genomic data from servers supporting the protocol.

Slightly confusingly, this package and the protocol that it implements are both called “htsget”. As a member of the GA4GH Streaming API group, I developed this client as part of the process of contributing to the design and evaluation of the protocol. I named the Python package “htsget”, which was subsequently also adopted as the name of the protocol. Since no one objected to me continuing to use the name for my package there didn’t seem to be much point in renaming it.

This is not an “official” GA4GH client for the protocol.

Please report any issues or features requests on GitHub


  • Thoroughly tested, production ready implementation.
  • Robust to transient network errors (failed transfers are retried).
  • Easy to install (pure Python implementation, minimal dependencies).
  • Powerful command line interface.
  • Simple Python API.

Indices and tables