PLAZA API
Introduction
The latest PLAZA instances offers one or more (depending on Platform Software Version) REST-full APIs.
These APIs can be used by users to extract data in an interactive manner from the PLAZA instances,
without having to parse the FTP data.
Over time, new API versions will be released.
These API versions will be redesigns/re-implementations, in order to meet the needs of end-users.
Limitations and Restrictions
If you make use of the PLAZA API, you must follow the Terms of Service
In short:
- Only people who are allowed access to the platform should make use of the API
- To make use of some APIs, the end-user must first request an API key (JWT token) through the request_token call
- Limitations are put on the number of API calls per minute for each API key in order to prevent an overload of the server
- The API is mainly targetted at other interactive applications. For large scale research based on the content of the PLAZA database, we would refer to the download section of each PLAZA instance
Workflow
Making use of the PLAZA API is very simple, and consists of the following steps:
-
Request a JSON Web Token (JWT).
- This token is requested through the API call request_token. This is the only API call which doesn't require a token to be called.
- The request can be either anonymous (without username+password) or by making use of the workbench credentials of the PLAZA instance that is targeted.
- There is an expiration date on the JWT
-
Perform API calls by using this token in the header for each request.
- Add a 'Authorization: Bearer <token>' to each call.
- If no token is provided, the API calls will return an access denied code (HTTP code 401) and an associated error message.
- See the JWT documentation for more information.
- Based on the response HTTP code (200,400,401,etc..) there will either be a result that can be parsed directly as JSON, or an error code (also in JSON format) indicating what went wrong.
Example Code
Example code for the PLAZA APIv2
API Documentation
The APIv2 call information is defined using the OpenAPIv2 Specification, and the documentation is generated using Swagger.
API Documentation
The APIv3 call information is defined using the OpenAPIv3 Specification, and the documentation is generated using Swagger.