Clients

OPTIMADE APIs can be queried with generic tools such as curl, and from any programming language. These clients do the work for you.

Client Try it More info
Materials Cloud OPTIMADE client Try it Details below
optimade.science Try it Details below
optimade-python-tools client Try it Details below
Swagger / OpenAPI UI Try it Details below

If you want one answer drawn from everything the federation serves, use optimade.science or the optimade-python-tools client. The other two query one database, or one implementation, at a time.

Materials Cloud OPTIMADE client

Maintainer(s): Bud Macaulay (PSI)
Type: Web app

An open-source single-page app that runs entirely in the browser, written in React and hosted on Materials Cloud. It queries one database at a time: choose a provider and one of its sub-databases from the dropdowns, or point the client at a base URL of your own, then filter on the structure property fields defined in the OPTIMADE API specification, either with the periodic table and slider widgets or by writing an OPTIMADE filter directly. Structures found can be inspected and downloaded as CIF, XYZ, XSF, VASP POSCAR or raw JSON. The same querier is also published as a Jupyter widget, widget-optimade-client.

optimade.science

Maintainer(s): Evgeny Blokhin (Tilde MI)
Type: Web app, a single HTML file

An open-source web client that searches all the databases in the OPTIMADE providers list simultaneously, using the OPTIMADE filter language. It relies on Cross-Origin Resource Sharing and ships as a single index.html, so it can be served from a web server, a USB stick, or your own machine.

optimade-python-tools

Maintainer(s): Materials Consortia
Type: Python library and optimade-get command

The optimade-python-tools library contains an asynchronous client that queries all OPTIMADE databases concurrently, from Python or from the command line as optimade-get. Start from the installation instructions, then see the client documentation for details.

Swagger / OpenAPI UI

Maintainer(s): Swagger (third party)
Type: Generic browser UI

Implementations that publish an OpenAPI schema can be explored in the Swagger UI, one implementation at a time. Servers built on the Python optimade package publish their schema at /extensions/openapi.json by default, though individual implementations may put it elsewhere. The link above opens the Swagger UI on the ODBX implementation, as an example.