Welcome to the Materials Project Developer's Area. This page describes how to develop your own applications using the data and software of the Materials Project.
Although you can use any programming language to develop applications, we recommend the Python programming language. Python is the language of the Materials Project codebases and is widely used and supported by the scientific community. If you choose not to use Python, we suggest a language with good JSON parsing support (JSON is the data exchange format of the Materials Project). In addition, we suggest a language that can easily make requests to web servers and fetch responses as JSON.
Accessing Materials Project data programmatically
You can access the Materials Project's data programmatically through our RESTful interface. To get started:
- Generate an API key in your profile page.
- Log into the Materials Project web site (top-right)
- Click 'profile' (top-right)
- In the section labeled 'API key', click 'regenerate key'. This is your API key (copy it)
- Click 'Save Settings' (your API key will not work until this is done)
- Make a GET request to a valid URL, for example: https://www.materialsproject.org/rest/v1/materials/C/vasp/?API_KEY=YOUR_API_KEY
- (make sure you replace the text YOUR_API_KEY with your Materials Project API key)
With your Materials API key, you can get Materials Project data from any program that can perform a GET request to our server. For more details on the Materials API, please see our documentation