Materials Platform for Data Science API

Science & Math / API Key Intermediate HTTPS
33 F
Measured Score 0 50 100 Speed 2/30 Consistency 1/20 Security 16/20 Browser access 10/15 Transparency 4/15 TESTED 2026-08-10

Overview

The Materials Platform for Data Science (MPDS) API provides access to curated experimental data about materials — things like crystal structures, physical properties, and phase diagrams. It is designed for researchers and scientists who want programmatic access to reliable materials science datasets. You will need an API key to get started, which you can request on their website.

Beginner Tip

Start with simple property queries like band gap or melting point for well-known materials such as silicon or iron to understand the response structure before building complex queries.

Measurement Record

What actually happened when we called this API from our own infrastructure. Every value below was recorded by the request, not copied from the provider's documentation.

Request
GET https://api.mpds.io/v1/
Result
HTTP 200 · application/json · 924 bytes
Response time
1398 ms (median of 3) · fastest 564 ms
Transport
TLSv1.3 · TLS_AES_256_GCM_SHA384
Browser CORS
Allowed — Access-Control-Allow-Origin: https://apisscore.com
Served by
nginx
Recorded
2026-08-10

Fields Returned

Top-level fields present in the response we captured, with the type and value we actually received.

Field Type Value received
type string info
attributes object {5 fields}

Captured Response

Captured from a real request to https://api.mpds.io/v1/ on 2026-08-10. Long arrays and nested objects are truncated to keep the shape readable.

JSON Response · Captured
{
  "meta": {
    "api_version": "1.0.0",
    "provider": {
      "name": "Materials Platform for Data Science",
      "description": "MPDS Optimade Endpoint",
      "prefix": "mpds",
      "homepage": "https://mpds.io"
    },
    "implementation": {
      "name": "Materials Platform for Data Science",
      "homepage": "https://developer.mpds.io",
      "maintainer": {
        "…": "(1 more fields)"
      },
      "version": "1.2.5",
      "issue_tracker": "https://github.com/mpds-io/mpds-api/issues"
    },
    "more_data_available": false,
    "data_available": 2933475,
    "time_stamp": "2026-08-10 19:53:22",
    "query": {
      "representation": "/info"
    },
    "data_returned": 1
  },
  "data": {
    "type": "info",
    "attributes": {
      "api_version": "1.0.0",
      "available_api_versions": [
        {
          "…": "(2 more fields)"
        }
      ],
      "available_endpoints": [
        "structures"
      ],
      "formats": [
        "json"
      ],
      "entry_types_by_format": {
        "…": "(1 more fields)"
      }
    }
  }
}

Implementation Example

Calls a real endpoint of this API. Replace any placeholder credentials with your own key.

Request
const url = "https://api.mpds.io/v0/data/facet?q={";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "X-API-Key": "YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

How This API Fails

We deliberately sent this API a broken request and recorded exactly what came back on 2026-08-10. Knowing the shape of an error before you hit it makes error handling much easier to write.

HTTP 404 Requesting a path that does not exist text/html

Returned an HTML error page rather than JSON — worth knowing if your client assumes every response can be parsed as JSON.

Common Errors & Troubleshooting

Generated guidance based on this API's documentation, not observed by us. Treat it as a starting point and check against the provider's own error reference.

401 Unauthorized Missing or invalid API key in the request header.
Include your API key in the "Key" header: -H "Key: YOUR_API_KEY".
Empty results array The query parameters do not match any records in the database.
Try broadening your search — use fewer filters or check spelling of element symbols and property names.
400 Bad Request Malformed JSON in the query parameter.
Ensure the q parameter is valid URL-encoded JSON. Use an online JSON validator before encoding.

Measured Score Breakdown

Live HTTP request to the API endpoint

Speed 2/30
Consistency 1/20
Security 16/20
Browser access 10/15
Transparency 4/15
Endpoint Response Time 1398ms

Fully tested on Aug 10, 2026

Technical Specifications

Auth API Key
HTTPS REQUIRED
CORS NO
Category Science & Math
Difficulty Intermediate
Endpoint last called: 2026-08-10

Similar APIs

View All →