Api Documentation
Security

Security

Reuzenpanda API v1 uses a custom authentication scheme based on service accounts. Each service account has a unique API key and a secret. The API key is used as the username and the secret as the password.

Obtaining a service account

To obtain a service account, please contact the Reuzenpanda team.

Obtain bearer token

To authenticate, send a POST request to the /login-api endpoint with the service account credentials in the body You will receive a JWT Bearer token in "response.sessionKey", this token is valid for 2 hours.

POST /login-api

Request body:

{
  "email": "service-account-name",
  "password": "service-account-secret"
}

Response body:

{
    "type": "SUCCESS",
    "user": {
        "id": "service-account-id",
        "email": "service-account-name",
        "name": null,
        "password": "",
        "locale": null,
        "role": "API"
    },
    "sessionKey": "BEARER",
    "attemptsLeft": 0,
    "should_check_two_factor": false
}

Authenticating with the API

To authenticate with the API, you should add a X-AUTHORIZATION header with the sessionKey as value to your requests.

Connecting a service account to a new profile

A user can "invite" a service account to their profile. This will allow the service account to access the user's data. To do this, the user should open their dashboard, go to the "Profile roles" section in the settings, and enter the service account's name. The invite will immediately be accepted, and the service account will be able to access the user's data.

Future plans

  • Add support for OpenID/OAuth2 type of authentication