We're in the process of moving our API documentation to this website. Documentation for some endpoints not included here can be found on our legacy API docs page.
The ETM API is versioned as v3, but at the time of writing is not semantically versioned. While we seek not to change the public API in a way that would break clients, it's nonetheless constantly in development.
All paths to the API are prefixed with
Response status codes
As a REST API, the Energy Transition Model uses a range of status codes to indicate the success or failure of the request.
|The request was successful.|
|The request was successful and a new resource was created. Note that a number of API endpoints use |
|The server was not able to process the request due to it being malformed.|
|The request was rejected due to not having permission to access the resource.|
|The resource requested does not exist at the current time.|
|The request was correctly formed (unlike a 400 Bad Request response), but contained errors which prevent it from being accepted. Typically an |
|The request was rejected due to exceeding the API rate-limit. At the time of writing, the ETM has no rate-limits; while there are no plans to change this, but your application should be prepared.|
|An error occurred with the ETM.|
Many endpoints within the ETM will respond with useful error information if the received request could not be processed. This will be in the form of a
400..499 response code, and a JSON response containing an
HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json; charset=utf-8
"Curve must have 8760 numeric values, one for each hour in a typical year",
"Curve must only contain numeric values"
Some endpoints also provide an
error_keys attribute – used for localization on official ETM websites. This attribute is not considered stable, and may be subject to change in the future. Please do not rely on it in your own applications.