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:

  1. 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
  2. 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.
  3. 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.