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.
