Core
PaaS v2.x
2

Public API #

The Kuzzle PaaS backend exposes public Kuzzle controllers for project, environment and application management.

You can call the API with any Kuzzle SDK:

await kuzzle.query({
  controller: 'environment',
  action: 'list',
  projectId: 'paas-project-my-project'
});

The same actions are also exposed as HTTP routes. The route paths documented in this section are relative to your Kuzzle PaaS API endpoint.

Authentication #

Most actions require an authenticated Kuzzle user. Send the JWT returned by the authentication flow with your SDK or as a bearer token when using HTTP.

See Authentication.

Main resources #

Resource hierarchy #

Project
+-- Environment
    +-- Application

A project is the main tenant. An environment belongs to one project. An application belongs to one environment.

Common conventions #

  • projectId is usually the Kuzzle tenant index, for example paas-project-my-project.
  • environmentId is the environment name, for example staging or production.
  • applicationId is the application _id, for example api or webapp.
  • Long-running operations may return an acknowledgement before the platform has finished provisioning or deleting external resources.
  • The API may return Kuzzle document wrappers for configuration resources and plain domain objects for project, environment and application resources.

Public controller summary #

ControllerPurpose
projectCreate, delete, list projects and list project container images.
project/configStore and retrieve project-level configuration documents.
environmentCreate, update, refresh, enable, disable and delete environments.
applicationCreate, update, deploy, enable, disable and delete applications.
historyRead project provisioning history.
monitoringManage monitoring access and dashboards.
alertsManage Slack alert configuration.
keycloakGenerate a Keycloak logout URL.