REST API

Reference

Resource

Operation

Description

Authentication

GET /login

Log the user in

GET /refresh

Create a new authentication token

Data

GET /data

Get the list of accessible data

GET /data/(int:data_id)

Get the data details

GET /data/(int:data_id)/export

Download a data as a file

POST /data/(int:data_id)/share

Share data

GET /data/(int:data_id)/share

Get list of data shares

Feature

GET /feature/(int:feature_id)

Get the feature details

GET /feature/(int:feature_id)/input-data/(int:data_id)

Get the feature inputs from data.

GET /feature/(int:feature_id)/output-data/(int:data_id)

Get the feature outputs from data.

Geodata

GET /geo-data

Get the list of accessible geodata

GET /geo-data/(int:geo_data_id)/tiles/(int:z)/(int:x)/(int:y)

Get a vector tile

DELETE /geo-data/(int:geo_data_id)

Delete a geodata

GET /geo-data/(int:geo_data_id)

Get the geodata details

PUT /geo-data/(int:geo_data_id)

Update a geodata

PUT /geo-data/(int:geo_data_id)/permissions

Modify the geodata permissions

GET /geo-data/(int:geo_data_id)/permissions

Get the geodata permissions

POST /geo-data/upload

Upload a vector geodata

POST /geo-data/upload-raster

Upload a raster geodata

GET /attribute/(int:attribute_id)

Get the details of an attribute

Globaldata

POST /global-data

Create a global data

GET /global-data

Get the list of accessible global data

DELETE /global-data/(int:data_id)

Delete a global data

GET /global-data/(int:data_id)

Get the global data details

PUT /global-data/(int:data_id)

Update a global data

PUT /global-data/(int:data_id)/permissions

Modify the global data permissions

GET /global-data/(int:data_id)/permissions

Get the global data permissions

MR-Sort

GET /project-data/(int:data_id)/mr-sort-inference

Get the MR-Sort inference model details

POST /project-data/(int:data_id)/mr-sort-inference

Execute an action on the MR-Sort inference model

PUT /project-data/(int:data_id)/mr-sort-inference

Modify the MR-Sort inference model

Project

POST /projects

Create a new project

GET /projects

Get the list of accessible projects

DELETE /project/(int:project_id)

Delete the project

GET /project/(int:project_id)

Get the project details

PUT /project/(int:project_id)

Update the project details

PUT /project/(int:project_id)/permissions

Modify the project permissions

GET /project/(int:project_id)/permissions

Get the project permissions

POST /project/(int:project_id)/data

Create a new data in the project

GET /project/(int:project_id)/data

Get the list of data in the project

GET /project/(int:project_id)/tasks

Get the list of tasks in a project

GET /project/(int:project_id)/shared

Get list of data shares

POST /project/(int:project_id)/template

Create a template from project

POST /project/(int:project_id)/replace-attributes

Replace project data attributes usage

Project data

GET /project-data

Get the list of project data

DELETE /project-data/(int:data_id)

Delete the project’s data

GET /project-data/(int:data_id)

Get the details of the project’s data

POST /project-data/(int:data_id)

Process the project’s data

PUT /project-data/(int:data_id)

Modify the project’s data

PUT /project-data/(int:data_id)/model

Modify the active processing model of the project data

DELETE /project-data/(int:data_id)/model/(int:model_id)

Delete the processing model of the project data

PUT /project-data/(int:data_id)/model/(int:model_id)

Modify the processing model of the project data

POST /project-data/(int:data_id)/model/change

Change the processing model of the project data.

GET /project-data/(int:data_id)/input-graph

Get the project data input subgraph

GET /project-data/(int:data_id)/output-graph

Get the project data output subgraph

POST /project-data/(int:data_id)/replace-attributes

Replace project data input attributes

Shares

GET /shares

Get list of data shares

DELETE /shares/(string:uid)

Delete a data share

GET /shares/(string:uid)

Download a shared geodata

StreamGeoData

GET /stream-geo-data

Get the list of accessible geodata streams

DELETE /stream-geo-data/(int:stream_geo_data_id)

Delete a geodata stream

GET /stream-geo-data/(int:stream_geo_data_id)

Get the geodata stream details

PUT /stream-geo-data/(int:stream_geo_data_id)

Update a geodata stream

PUT /stream-geo-data/(int:stream_geo_data_id)/permissions

Modify the geodata stream permissions

GET /stream-geo-data/(int:stream_geo_data_id)/permissions

Get the geodata stream permissions

POST /stream-geo-data/(int:stream_geo_data_id)/update-data

Update features preview of a geodata stream

POST /stream-geo-data/upload-wfs

Upload a WFS geo data stream

POST /stream-geo-data/upload-wms

Upload a WMS geo data stream

Task

DELETE /task/(string:task_id)

Revoke the task

GET /task/(string:task_id)

Get the details of the task

Template

GET /templates

Get the list of accessible templates

DELETE /template/(int:template_id)

Delete a project template

PUT /template/(int:template_id)

Modify a project template

PUT /template/(int:template_id)/permissions

Modify the template permissions

GET /template/(int:template_id)/permissions

Get the template permissions

User

GET /users

Get the list of users

GET /user

Get the details of the current user

Documentation

GET /data

Get the list of all the data for the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /data/(int: data_id)

Get a data from its id.

Parameters:
  • data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /global-data

Create an existing global data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to create global data.

GET /global-data

Get the list of all the global data for the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
DELETE /global-data/(int: data_id)

Delete a global data.

Parameters:
  • data_id (int) – The id of the global -data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – The global data is used as input in other data and cannot be deleted.

  • 403 Forbidden – The user is not allowed to delete the global data.

  • 404 Not Found – The global data doesn’t exist.

GET /global-data/(int: data_id)

Get a global data from its id.

Parameters:
  • data_id (int) – The id of the global data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /global-data/(int: data_id)

Update an existing global data.

Parameters:
  • data_id (int) – The id of the global data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /global-data/(int: data_id)/permissions

Update the list of permissions for the global data.

The user must be the owner of the global data.

Parameters:
  • data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /global-data/(int: data_id)/permissions

Return the list of permissions for the global data.

The user must be the owner of the global data.

Parameters:
  • data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /geo-data

Get the list of all the geo-data for the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /geo-data/(int: geo_data_id)/tiles/(int: z)/(int: x)/(int: y)

Return a Mapbox Vector Tile of the geo-data.

Parameters:
  • geo_data_id (int) – The id of the geo-data.

  • z (int) – The tile zoom level.

  • x (int) – The tile x index.

  • y (int) – The tile y index.

Query Parameters:
  • property (str) – The name of the property to return as the value attribute. None by default.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
DELETE /geo-data/(int: geo_data_id)

Delete a geodata and its features.

Parameters:
  • geo_data_id (int) – The id of the geo-data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /geo-data/(int: geo_data_id)

Get a geo-data from its id.

Parameters:
  • geo_data_id (int) – The id of the geo-data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /geo-data/(int: geo_data_id)

Update an existing geo-data.

Parameters:
  • geo_data_id (int) – The id of the geo-data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /geo-data/(int: geo_data_id)/permissions

Update the list of permissions for the geo-data.

The user must be the owner of the geodata.

Parameters:
  • geo_data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /geo-data/(int: geo_data_id)/permissions

Return the list of permissions for the geo-data.

The user must be the owner of the geodata.

Parameters:
  • geo_data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /data/(int: data_id)/export

Return the data in desired format.

Parameters:
  • data_id (int) – The id of the data to download.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /geo-data/upload

Create a new geo-data from the uploaded files.

The uploaded file can either be a .zip file containing all the required shapefile files, the list of shapefile files or a single file containing vector geodata.

Form Parameters:
  • file – The list of files.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /geo-data/upload-raster

Create a new vectorized geo-data from the uploaded raster file.

The raster data is reclassified using the classes given, to group multiple values together and transform the raster file in vector geometries.

For example, classes of [[0, 10, 5], [10, 100, 50]] would assign the value 5 to all the raster cells in [0, 10[, the value 50 to all the cells in [10, 100[, and 0 or 100 to the cells outside that range.

Form Parameters:
  • file – The raster file.

  • classes – The classes to reclassify the raster values (list [[low, high, value], ...]).

  • start – The starting value for classes creation (if classes not provided).

  • step – The step value for classes creation (if classes not provided).

  • stop – The stop value for classes creation (if classes not provided).

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /stream-geo-data

Get the list of all the geo-data stream for the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
DELETE /stream-geo-data/(int: stream_geo_data_id)

Delete a geodata stream.

Parameters:
  • stream_geo_data_id (int) – The id of the geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /stream-geo-data/(int: stream_geo_data_id)

Get a geo-data stream from its id.

Parameters:
  • stream_geo_data_id (int) – The id of the geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access this geo-data stream.

  • 404 Not Found – The geo-data stream doesn’t exist.

PUT /stream-geo-data/(int: stream_geo_data_id)

Update an existing geo-data stream.

Parameters:
  • stream_geo_data_id (int) – The id of the geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /stream-geo-data/(int: stream_geo_data_id)/permissions

Update the list of permissions for the geo-data.

The user must be the owner of the geodata stream.

Parameters:
  • stream_geo_data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /stream-geo-data/(int: stream_geo_data_id)/permissions

Return the list of permissions for the geo-data stream.

The user must be the owner of the geodata stream.

Parameters:
  • stream_geo_data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /stream-geo-data/(int: stream_geo_data_id)/update-data

Update features preview of an existing geo-data stream.

Parameters:
  • stream_geo_data_id (int) – The id of the geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – The stream could not be retrieved with given parameters.

  • 403 Forbidden – The user is not allowed to modify the geo-data stream.

  • 404 Not Found – The geo-data stream doesn’t exist.

POST /stream-geo-data/upload-wfs

Create a new geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – The stream could not be retrieved with given parameters.

  • 403 Forbidden – The user is not allowed to create geo-data stream.

POST /stream-geo-data/upload-wms

Create a new geo-data stream.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – The stream could not be retrieved with given parameters.

  • 403 Forbidden – The user is not allowed to create geo-data stream.

GET /attribute/(int: attribute_id)

Get the details of an attribute of a geo-data.

The details contain the name of the attribute, its type and some statistics about its values.

Parameters:
  • attribute_id (int) – The id of the data attribute.

Query Parameters:
  • values (bool) – Return the values of the attribute. Default: False.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access the geo-data attribute.

  • 404 Not Found – The geo-data attribute doesn’t exist.

GET /feature/(int: feature_id)

Return the details of the feature.

Parameters:
  • feature_id (int) – The id of the feature.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access the geo-data with this feature.

  • 404 Not Found – The geo-data feature doesn’t exist.

GET /feature/(int: feature_id)/input-data/(int: data_id)

Return the inputs of the feature in specified data.

Parameters:
  • feature_id (int) – The id of the feature.

  • data_id (int) – The id of the input data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access the geo-data with this feature.

  • 404 Not Found – The geo-data feature or data doesn’t exist.

GET /feature/(int: feature_id)/output-data/(int: data_id)

Return the outputs of the feature in specified data.

Parameters:
  • feature_id (int) – The id of the feature.

  • data_id (int) – The id of the output data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access the geo-data with this feature.

  • 404 Not Found – The geo-data feature or data doesn’t exist.

POST /projects

Create a new project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /projects

Return the full list of projects accessible by the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

DELETE /project/(int: project_id)

Delete the project.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project/(int: project_id)

Return the project details for a given id.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /project/(int: project_id)

Update the project details.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /project/(int: project_id)/permissions

Allow to modify the list of permissions for the project.

Only the project manager is allowed to modify the permissions. The project manager is always added to the list of authorized users.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project/(int: project_id)/permissions

Allow the project manager to get the list of permissions.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /project/(int: project_id)/data

Create a new project data in the project.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – There is an error in the json schema for the data, or the data/stream already exists in the project.

  • 403 Forbidden – The user is not allowed to access this project, the data or the stream.

  • 404 Not Found – The project doesn’t exist.

GET /project/(int: project_id)/data

Return the list of project data in the project.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project/(int: project_id)/tasks

Return the list of tasks for the project

Parameters:
  • project_id (int) – The id of the project.

Query Parameters:
  • limit (int) – Number of tasks to return.

  • offset (int) – Number of tasks to skip (e.g., a value of 25 means the first 25 tasks will not be returned).

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project/(int: project_id)/shared

Get the list of data shares of a project.

Parameters:
  • project_id (int) – The id of the project.

Status Codes:
POST /project/(int: project_id)/template

Create a template from a project.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /project/(int: project_id)/replace-attributes

Replace project data attributes usage.

It replaces usage of old attributes given by new attributes given, assuming the old attributes given are attributes of this project’s data and that the new attributes given are not already used as inputs alongside some of the old attributes.

Its main usage is threfore to replace whole project data (all their attributes) by completely unused other project data.

Parameters:
  • project_id (int) – The id of the project.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /templates

Return the list of templates of the user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

DELETE /template/(int: template_id)

Delete a project template.

Parameters:
  • template_id (int) – The id of the project template.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /template/(int: template_id)

Modify a project template.

Parameters:
  • template_id (int) – The id of the project template.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /template/(int: template_id)/permissions

Allow to modify the list of permissions for the template.

Only the template manager is allowed to modify the permissions. The template manager is always added to the list of authorized users.

Parameters:
  • template_id (int) – The id of the template.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /template/(int: template_id)/permissions

Allow the template manager to get the list of permissions.

Parameters:
  • template_id (int) – The id of the template.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
DELETE /task/(string: task_id)

Revoke the task.

Parameters:
  • task_id (int) – The id of the task.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /task/(string: task_id)

Return the details of the task.

Parameters:
  • task_id (int) – The id of the task.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project-data

Returns the list of project data

Query Parameters:
  • ids – The list of comma separated data ids (required).

  • fields – The list of fields to return. Default: Return all fields.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access at least one project data.

  • 404 Not Found – At least one project data does not exist.

DELETE /project-data/(int: data_id)

Delete the project’s data.

Parameters:
  • data_id (int) – The id the project’s data.

Status Codes:
GET /project-data/(int: data_id)

Return the details of the project’s data.

The schema used to serialize the data will depend on the data_type attribute.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /project-data/(int: data_id)

Process the project’s data.

Parameters:
  • data_id (int) – The id of the project’s data.

Query Parameters:
  • action (str) – Action to execute on the data: currently only process is supported (required).

  • chain (bool) – Also process the required dependencies. Default: False.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /project-data/(int: data_id)

Modify the project’s data.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /project-data/(int: data_id)/model

Update the active processing model of the data.

The type of processing model cannot be modified.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
DELETE /project-data/(int: data_id)/model/(int: model_id)

Delete the processing model of the data.

Parameters:
  • data_id (int) – The id the project’s data.

  • model_id (int) – The id the processing model.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 400 Bad Request – The processing model is the only one for the data so cannot be deleted.

  • 403 Forbidden – The user is not allowed to access the project.

  • 404 Not Found – Either the project data or processing model does not exist.

PUT /project-data/(int: data_id)/model/(int: model_id)

Update the processing model of the data.

The type of processing model cannot be modified.

Parameters:
  • data_id (int) – The id the project’s data.

  • model_id (int) – The id the processing model.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
  • 403 Forbidden – The user is not allowed to access the project.

  • 404 Not Found – Either the project data or processing model does not exist.

POST /project-data/(int: data_id)/model/change

Change the active processing model.

Parameters:
  • data_id (int) – The id of the project’s data.

Response JSON Object:
  • id (int) – Id of the processing model to set as the active model.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project-data/(int: data_id)/mr-sort-inference

Return the details of the MR-Sort inference model for the project’s data.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /project-data/(int: data_id)/mr-sort-inference

Execute an action on the MR-Sort inference model.

Parameters:
  • data_id (int) – The id the project’s data.

Query Parameters:
  • action (str) – The action to execute: load will load the inference alternatives, infer will try to infer the MR-Sort model from the alternatives (required).

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
PUT /project-data/(int: data_id)/mr-sort-inference

Modify the MR-Sort inference model.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project-data/(int: data_id)/input-graph

Return the input data subgraph spanning from the project data.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /project-data/(int: data_id)/output-graph

Return the output data subgraph spanning from the project data.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /project-data/(int: data_id)/replace-attributes

Replace project data input attributes.

It replaces usage of old attributes given by new attributes given, assuming the old attributes given are attributes of this project’s data and that the new attributes given are not already used as inputs alongside some of the old attributes.

Its main usage is threfore to replace whole project data (all their attributes) by completely unused other project data.

Parameters:
  • data_id (int) – The id the project’s data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
POST /data/(int: data_id)/share

Create a new data share.

Parameters:
  • data_id (int) – The id of the data.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

Status Codes:
GET /data/(int: data_id)/share

Get the list of shares of a data.

Parameters:
  • data_id (int) – The id of the data.

Status Codes:
GET /shares

Get the list of data shares.

Status Codes:
DELETE /shares/(string: uid)

Delete a data share.

Parameters:
  • uid (str) – The uid of a data share.

Status Codes:
GET /shares/(string: uid)

Return the geometries of a shared data.

Parameters:
  • uid (str) – The uid of a data share.

Status Codes:
GET /users

Return the list of all the users.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

GET /login

Log the user in and return an authentication and a refresh token.

Request Headers:
Response JSON Object:
  • access_token (str) – Access token.

  • refresh_token (str) – Token to use for creating a new authentication token.

  • token_type (str) – Type of the token

GET /refresh

Create a new authentication token from the refresh token.

Request Headers:
Response JSON Object:
  • access_token (str) – Access token.

  • token_type (str) – Type of the token

GET /user

Return the details of the current user.

Request Headers:
  • Authorization – JSON Web Token with Bearer scheme (Authorization: Bearer <token>).

OpenAPI Specification

{
    "info": {
        "title": "DESEASION API docs",
        "version": "2.1.1"
    },
    "paths": {
        "/data": {
            "get": {
                "description": "Get the list of all the data for the user.",
                "responses": {
                    "403": {
                        "description": "No user logged in."
                    },
                    "200": {
                        "description": "List of all data the user has access to",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Data"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Data"
                ],
                "summary": "Get the list of accessible data",
                "parameters": [
                    {
                        "in": "query",
                        "name": "type",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string",
                                "enum": [
                                    "geo_data",
                                    "generated_geo_data",
                                    "global_data",
                                    "wfs",
                                    "wms"
                                ]
                            }
                        },
                        "required": false,
                        "explode": true,
                        "style": "form"
                    }
                ],
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/data/{data_id}": {
            "get": {
                "description": "Get a data from its id.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this data."
                    },
                    "404": {
                        "description": "The data doesn't exist."
                    },
                    "200": {
                        "description": "Data details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Data"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Data"
                ],
                "summary": "Get the data details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/global-data": {
            "post": {
                "description": "Create an existing global data.",
                "responses": {
                    "403": {
                        "description": "The user is not allowed to create global data."
                    },
                    "200": {
                        "description": "Created global data details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GlobalData"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Create a global data",
                "requestBody": {
                    "description": "Global data details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GlobalDataCreation"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Get the list of all the global data for the user.",
                "responses": {
                    "403": {
                        "description": "No user logged in."
                    },
                    "200": {
                        "description": "List of all global data the user has access to",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/GlobalData"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Get the list of accessible global data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/global-data/{data_id}": {
            "put": {
                "description": "Update an existing global data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the global data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to modify the global data."
                    },
                    "404": {
                        "description": "The global data doesn't exist."
                    },
                    "200": {
                        "description": "Global data updated details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GlobalData"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Update a global data",
                "requestBody": {
                    "description": "New global data details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GlobalData"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Get a global data from its id.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the global data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this global data."
                    },
                    "404": {
                        "description": "The global data doesn't exist."
                    },
                    "200": {
                        "description": "Global data details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GlobalData"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Get the global data details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete a global data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the global -data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The global data is used as input in other data and cannot be deleted."
                    },
                    "403": {
                        "description": "The user is not allowed to delete the global data."
                    },
                    "404": {
                        "description": "The global data doesn't exist."
                    },
                    "200": {
                        "description": "Global data successfully deleted",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Delete a global data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/global-data/{data_id}/permissions": {
            "put": {
                "description": "Update the list of permissions for the global data.\n\nThe user must be the owner of the global data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the data."
                    },
                    "404": {
                        "description": "The global data doesn't exist."
                    },
                    "200": {
                        "description": "Global data updated permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GlobalDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Modify the global data permissions",
                "requestBody": {
                    "description": "New global data permissions",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GlobalDataAccess"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the list of permissions for the global data.\n\nThe user must be the owner of the global data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the data."
                    },
                    "404": {
                        "description": "The global data doesn't exist."
                    },
                    "200": {
                        "description": "Global data permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GlobalDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Globaldata"
                ],
                "summary": "Get the global data permissions",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/geo-data": {
            "get": {
                "description": "Get the list of all the geo-data for the user.",
                "responses": {
                    "403": {
                        "description": "No user logged in."
                    },
                    "200": {
                        "description": "List of all geodata the user has access to",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataListResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Get the list of accessible geodata",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/geo-data/{geo_data_id}/tiles/{z}/{x}/{y}": {
            "get": {
                "description": "Return a Mapbox Vector Tile of the geo-data.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data."
                    },
                    {
                        "name": "z",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The tile zoom level."
                    },
                    {
                        "name": "x",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The tile x index."
                    },
                    {
                        "name": "y",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The tile y index."
                    },
                    {
                        "in": "query",
                        "name": "property",
                        "required": false,
                        "description": "The name of the property to return as the 'value' attribute. Default: None",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this geo-data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Requested tile (might be empty)",
                        "content": {
                            "application/vnd.mapbox-vector-tile": {
                                "type": "string",
                                "format": "binary"
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Get a vector tile",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "z",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "x",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "y",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/geo-data/{geo_data_id}": {
            "put": {
                "description": "Update an existing geo-data.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to modify the geo-data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Geodata updated details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Update a geodata",
                "requestBody": {
                    "description": "New geodata details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GeoData"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Get a geo-data from its id.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this geo-data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Geodata details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Get the geodata details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete a geodata and its features.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The geo-data is used as input in other data and cannot be deleted."
                    },
                    "403": {
                        "description": "The user is not allowed to delete the geo-data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Geodata successfully deleted",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Delete a geodata",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/geo-data/{geo_data_id}/permissions": {
            "put": {
                "description": "Update the list of permissions for the geo-data.\n\nThe user must be the owner of the geodata.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Geodata updated permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Modify the geodata permissions",
                "requestBody": {
                    "description": "New geodata permissions",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GeoDataAccess"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the list of permissions for the geo-data.\n\nThe user must be the owner of the geodata.",
                "parameters": [
                    {
                        "name": "geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the data."
                    },
                    "404": {
                        "description": "The geo-data doesn't exist."
                    },
                    "200": {
                        "description": "Geodata permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Get the geodata permissions",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/data/{data_id}/export": {
            "get": {
                "description": "Return the data in desired format.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data to download."
                    },
                    {
                        "in": "query",
                        "name": "outputFormat",
                        "required": false,
                        "description": "Desired output format (leave blank for zip shapefile/json)",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the data."
                    },
                    "404": {
                        "description": "The data doesn't exist."
                    },
                    "415": {
                        "description": "Output format is not supported."
                    },
                    "500": {
                        "description": "There was an error with the geometry while creating the file."
                    },
                    "200": {
                        "description": "Data in specified file format",
                        "content": {
                            "application/octet-stream": {
                                "type": "string",
                                "format": "binary"
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Data"
                ],
                "summary": "Download a data as a file",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/geo-data/upload": {
            "post": {
                "description": "Create a new geo-data from the uploaded files.\n\nThe uploaded file can either be a .zip file containing all the required\nshapefile files, the list of shapefile files or a single file\ncontaining vector geodata.",
                "responses": {
                    "403": {
                        "description": "The user is not allowed to create geo-data."
                    },
                    "415": {
                        "description": "There is an error in the uploaded file."
                    },
                    "200": {
                        "description": "Uploaded geodata details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Upload a vector geodata",
                "requestBody": {
                    "description": "Geodata as zipped/filelist shapefile or other format",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "file": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "binary"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/geo-data/upload-raster": {
            "post": {
                "description": "Create a new vectorized geo-data from the uploaded raster file.\n\nThe raster data is reclassified using the classes given,\nto group multiple values together\nand transform the raster file in vector geometries.\n\nFor example, classes of ``[[0, 10, 5], [10, 100, 50]]``\nwould assign the value 5 to all the raster cells in [0, 10[,\nthe value 50 to all the cells in [10, 100[,\nand 0 or 100 to the cells outside that range.",
                "responses": {
                    "403": {
                        "description": "The user is not allowed to create geo-data."
                    },
                    "415": {
                        "description": "There is an error in the uploaded file."
                    },
                    "200": {
                        "description": "Uploaded geodata details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Upload a raster geodata",
                "requestBody": {
                    "description": "Geodata as a raster image",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "file": {
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "binary"
                                        }
                                    },
                                    "classes": {
                                        "type": "array",
                                        "items": {
                                            "type": "array",
                                            "items": {
                                                "type": "number"
                                            }
                                        }
                                    },
                                    "start": {
                                        "type": "number"
                                    },
                                    "step": {
                                        "type": "number"
                                    },
                                    "stop": {
                                        "type": "number"
                                    }
                                }
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/stream-geo-data": {
            "get": {
                "description": "Get the list of all the geo-data stream for the user.",
                "responses": {
                    "403": {
                        "description": "No user logged in."
                    },
                    "200": {
                        "description": "List of geodata streams the user has access to",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataListResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Get the list of accessible geodata streams",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/stream-geo-data/{stream_geo_data_id}": {
            "put": {
                "description": "Update an existing geo-data stream.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data stream."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to modify the geo-data stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream updated details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Update a geodata stream",
                "requestBody": {
                    "description": "New geodata stream details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/StreamGeoData"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Get a geo-data stream from its id.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data stream."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this geo-data stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Get the geodata stream details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete a geodata stream.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data stream."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to delete the geo-data stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream successfully deleted",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Delete a geodata stream",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "stream_geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/stream-geo-data/{stream_geo_data_id}/permissions": {
            "put": {
                "description": "Update the list of permissions for the geo-data.\n\nThe user must be the owner of the geodata stream.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the geodata stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream updated permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Modify the geodata stream permissions",
                "requestBody": {
                    "description": "New geodata stream permissions",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/StreamGeoDataAccess"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the list of permissions for the geo-data stream.\n\nThe user must be the owner of the geodata stream.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the owner of the geodata stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataAccessResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Get the geodata stream permissions",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "stream_geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/stream-geo-data/{stream_geo_data_id}/update-data": {
            "post": {
                "description": "Update features preview of an existing geo-data stream.",
                "parameters": [
                    {
                        "name": "stream_geo_data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the geo-data stream."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The stream could not be retrieved with given parameters."
                    },
                    "403": {
                        "description": "The user is not allowed to modify the geo-data stream."
                    },
                    "404": {
                        "description": "The geo-data stream doesn't exist."
                    },
                    "200": {
                        "description": "Geodata stream updated details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Update features preview of a geodata stream",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "stream_geo_data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/stream-geo-data/upload-wfs": {
            "post": {
                "description": "Create a new geo-data stream.",
                "responses": {
                    "400": {
                        "description": "The stream could not be retrieved with given parameters."
                    },
                    "403": {
                        "description": "The user is not allowed to create geo-data stream."
                    },
                    "200": {
                        "description": "Uploaded WFS geodata stream details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Upload a WFS geo data stream",
                "requestBody": {
                    "description": "Parameters necessary to find the WFS stream online",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/WFSGeoDataCreation"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/stream-geo-data/upload-wms": {
            "post": {
                "description": "Create a new geo-data stream.",
                "responses": {
                    "400": {
                        "description": "The stream could not be retrieved with given parameters."
                    },
                    "403": {
                        "description": "The user is not allowed to create geo-data stream."
                    },
                    "200": {
                        "description": "Uploaded WMS geodata stream details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/StreamGeoDataResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "StreamGeoData"
                ],
                "summary": "Upload a WMS geo data stream",
                "requestBody": {
                    "description": "Parameters necessary to find the WMS stream online",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/WMSGeoDataCreation"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/attribute/{attribute_id}": {
            "get": {
                "description": "Get the details of an attribute of a geo-data.\n\nThe details contain the name of the attribute,\nits type and some statistics about its values.",
                "parameters": [
                    {
                        "name": "attribute_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data attribute."
                    },
                    {
                        "in": "query",
                        "name": "values",
                        "required": false,
                        "description": "Return the values of the attribute. Default: false",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the geo-data attribute."
                    },
                    "404": {
                        "description": "The geo-data attribute doesn't exist."
                    },
                    "200": {
                        "description": "Details of an attribute",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "oneOf": [
                                        {
                                            "$ref": "#/components/schemas/DataAttributeGetResponse"
                                        },
                                        {
                                            "$ref": "#/components/schemas/DataAttributeWithValuesGetResponse"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Geodata"
                ],
                "summary": "Get the details of an attribute",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "attribute_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/feature/{feature_id}": {
            "get": {
                "description": "Return the details of the feature.",
                "parameters": [
                    {
                        "name": "feature_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the feature."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the geo-data with this feature."
                    },
                    "404": {
                        "description": "The geo-data feature doesn't exist."
                    },
                    "200": {
                        "description": "Geodata feature details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FeatureResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Feature"
                ],
                "summary": "Get the feature details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "feature_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/feature/{feature_id}/input-data/{data_id}": {
            "get": {
                "description": "Return the inputs of the feature in specified data.",
                "parameters": [
                    {
                        "name": "feature_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the feature."
                    },
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the input data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the geo-data with this feature."
                    },
                    "404": {
                        "description": "The geo-data feature or data doesn't exist."
                    },
                    "200": {
                        "description": "Data feature inputs",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BaseDataFeatures"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Feature"
                ],
                "summary": "Get the feature inputs from data.",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "feature_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/feature/{feature_id}/output-data/{data_id}": {
            "get": {
                "description": "Return the outputs of the feature in specified data.",
                "parameters": [
                    {
                        "name": "feature_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the feature."
                    },
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the output data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the geo-data with this feature."
                    },
                    "404": {
                        "description": "The geo-data feature or data doesn't exist."
                    },
                    "200": {
                        "description": "Data feature outputs",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BaseDataFeatures"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Feature"
                ],
                "summary": "Get the feature outputs from data.",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "feature_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/projects": {
            "post": {
                "description": "Create a new project.",
                "responses": {
                    "403": {
                        "description": "The user is not allowed to create projects."
                    },
                    "200": {
                        "description": "Created project details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Create a new project",
                "requestBody": {
                    "description": "Either the project details or the template from which to create it",
                    "content": {
                        "application/json": {
                            "schema": {
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/ProjectCreation"
                                    },
                                    {
                                        "$ref": "#/components/schemas/ProjectFromTemplateRequestBody"
                                    }
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the full list of projects accessible by the user.",
                "tags": [
                    "Project"
                ],
                "summary": "Get the list of accessible projects",
                "responses": {
                    "200": {
                        "description": "Full list of accessible projects",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/project/{project_id}": {
            "put": {
                "description": "Update the project details.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to modify this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "New project details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Update the project details",
                "requestBody": {
                    "description": "New project details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Project"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the project details for a given id.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "Project details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Get the project details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete the project.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The project is referenced by other objects and cannot be deleted."
                    },
                    "403": {
                        "description": "The user is not allowed to delete this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "Project successfully deleted",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Delete the project",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/permissions": {
            "put": {
                "description": "Allow to modify the list of permissions for the project.\n\nOnly the project manager is allowed to modify the permissions.\nThe project manager is always added to the list of authorized users.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the manager of this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "New project permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectPermissionGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Modify the project permissions",
                "requestBody": {
                    "description": "New project permissions",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectAccess"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Allow the project manager to get the list of permissions.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the manager of this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "Project permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectPermissionGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Get the project permissions",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/data": {
            "post": {
                "description": "Create a new project data in the project.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "There is an error in the json schema for the data, or the data/stream already exists in the project."
                    },
                    "403": {
                        "description": "The user is not allowed to access this project, the data or the stream."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "List of project shared data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharedDataListPostResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Create a new data in the project",
                "requestBody": {
                    "description": "New project data details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectDataCreation"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the list of project data in the project.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access this project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "List of project shared data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharedDataListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Get the list of data in the project",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/tasks": {
            "get": {
                "description": "Return the list of tasks for the project",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    },
                    {
                        "in": "query",
                        "name": "offset",
                        "required": false,
                        "description": "Number of tasks to skip. Default: None",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "in": "query",
                        "name": "limit",
                        "required": false,
                        "description": "Maximum number of tasks to return. Default: all",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "List of project tasks",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectTaskListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Get the list of tasks in a project",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/shared": {
            "get": {
                "description": "Get the list of data shares of a project.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The project does not exist."
                    },
                    "200": {
                        "description": "List of data shares of the project",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharesGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Get list of data shares",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/template": {
            "post": {
                "description": "Create a template from a project.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The project doesn't exist."
                    },
                    "200": {
                        "description": "Created template details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectTemplatePostResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Create a template from project",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project/{project_id}/replace-attributes": {
            "post": {
                "description": "Replace project data attributes usage.\n\nIt replaces usage of old attributes given by new attributes given,\nassuming the old attributes given are attributes of this project's data\nand that the new attributes given are not already used as inputs\nalongside some of the old attributes.\n\nIts main usage is threfore to replace whole project data\n(all their attributes) by completely unused other project data.",
                "parameters": [
                    {
                        "name": "project_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "Remapping could not proceed with given arguments."
                    },
                    "403": {
                        "description": "The user is not allowed to access this project, or a data"
                    },
                    "404": {
                        "description": "The project or a data doesn't exist."
                    },
                    "200": {
                        "description": "List of project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharedDataListPostResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project"
                ],
                "summary": "Replace project data attributes usage",
                "requestBody": {
                    "description": "",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectDataReplaceInputsPostRequestBody"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "project_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/templates": {
            "get": {
                "description": "Return the list of templates of the user.",
                "tags": [
                    "Template"
                ],
                "summary": "Get the list of accessible templates",
                "parameters": [
                    {
                        "in": "query",
                        "name": "managed",
                        "required": false,
                        "description": [
                            "Return all accessible templates if false or absent, only managed templates otherwise"
                        ],
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of accessible project templates",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectTemplateListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/template/{template_id}": {
            "put": {
                "description": "Modify a project template.",
                "parameters": [
                    {
                        "name": "template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project template."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the template."
                    },
                    "404": {
                        "description": "The template doesn't exist."
                    },
                    "200": {
                        "description": "New project template details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectTemplatePostResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Template"
                ],
                "summary": "Modify a project template",
                "requestBody": {
                    "description": "New project template details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Template"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete a project template.",
                "parameters": [
                    {
                        "name": "template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project template."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to delete the template."
                    },
                    "404": {
                        "description": "The template doesn't exist."
                    },
                    "200": {
                        "description": "Template deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Template"
                ],
                "summary": "Delete a project template",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "template_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/template/{template_id}/permissions": {
            "put": {
                "description": "Allow to modify the list of permissions for the template.\n\nOnly the template manager is allowed to modify the permissions.\nThe template manager is always added to the list of authorized users.",
                "parameters": [
                    {
                        "name": "template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the template."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the manager of this template."
                    },
                    "404": {
                        "description": "The template doesn't exist."
                    },
                    "200": {
                        "description": "New template permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TemplatePermissionGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Template"
                ],
                "summary": "Modify the template permissions",
                "requestBody": {
                    "description": "New template permissions",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/TemplateAccess"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Allow the template manager to get the list of permissions.",
                "parameters": [
                    {
                        "name": "template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the template."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not the manager of this template."
                    },
                    "404": {
                        "description": "The template doesn't exist."
                    },
                    "200": {
                        "description": "Template permissions",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TemplatePermissionGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Template"
                ],
                "summary": "Get the template permissions",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "template_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/task/{task_id}": {
            "get": {
                "description": "Return the details of the task.",
                "parameters": [
                    {
                        "name": "task_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the task."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project for this task."
                    },
                    "404": {
                        "description": "The task doesn't exist."
                    },
                    "200": {
                        "description": "Details of the task",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TaskGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Task"
                ],
                "summary": "Get the details of the task",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Revoke the task.",
                "parameters": [
                    {
                        "name": "task_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the task."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project for this task."
                    },
                    "404": {
                        "description": "The task doesn't exist."
                    },
                    "200": {
                        "description": "Task revoked successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Task"
                ],
                "summary": "Revoke the task",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "task_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "string"
                    }
                }
            ]
        },
        "/project-data": {
            "get": {
                "description": "Returns the list of project data",
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access at least one project data."
                    },
                    "404": {
                        "description": "At least one project data does not exist."
                    },
                    "200": {
                        "description": "List of project data with wanted fields",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Get the list of project data",
                "parameters": [
                    {
                        "in": "query",
                        "name": "ids",
                        "required": true,
                        "description": "The list of project data ids",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        },
                        "style": "form",
                        "explode": false
                    },
                    {
                        "in": "query",
                        "name": "fields",
                        "required": false,
                        "description": "The list of project data fields to return. Default: all.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "style": "form",
                        "explode": false
                    }
                ],
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/project-data/{data_id}": {
            "put": {
                "description": "Modify the project's data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "There is an error in the json data."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "Updated details of the project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Modify the project's data",
                "requestBody": {
                    "description": "New project data details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectData"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "description": "Process the project's data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project's data."
                    },
                    {
                        "in": "query",
                        "name": "action",
                        "required": true,
                        "description": "Action to execute on the data: currently only 'process' is supported.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "in": "query",
                        "name": "chain",
                        "required": false,
                        "description": "Also process the required dependencies. Default: False.",
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "202": {
                        "description": "Details of the newly created asynchronously running task",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataPostResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "The ``action`` is incorrect."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    },
                    "200": {
                        "description": ""
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Process the project's data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the details of the project's data.\n\nThe schema used to serialize the data will depend on the data_type\nattribute.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "Details of the project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Get the details of the project's data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete the project's data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "Project data successfully deleted",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Delete the project's data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/model": {
            "put": {
                "description": "Update the active processing model of the data.\n\nThe type of processing model cannot be modified.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "Updated active model of project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataActiveModelPutResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Modify the active processing model of the project data",
                "requestBody": {
                    "description": "New active model details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProcessingModel"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/model/{model_id}": {
            "put": {
                "description": "Update the processing model of the data.\n\nThe type of processing model cannot be modified.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    },
                    {
                        "name": "model_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the processing model."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "Either the project data or processing model does not exist."
                    },
                    "200": {
                        "description": "Updated model of project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataActiveModelPutResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Modify the processing model of the project data",
                "requestBody": {
                    "description": "New model details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProcessingModel"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "description": "Delete the processing model of the data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    },
                    {
                        "name": "model_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the processing model."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The processing model is the only one for the data so cannot be deleted."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "Either the project data or processing model does not exist."
                    },
                    "200": {
                        "description": "Preference model deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Delete the processing model of the project data",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                },
                {
                    "name": "model_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/model/change": {
            "post": {
                "description": "Change the active processing model.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allower to access the project."
                    },
                    "404": {
                        "description": "The project data or processing model does not exist."
                    },
                    "400": {
                        "description": "The content is incorrect."
                    },
                    "200": {
                        "description": "Details of the project data active model",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataActiveModelPutResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Change the processing model of the project data.",
                "requestBody": {
                    "description": "Id of the processing model to set as the active model",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectDataModelChangePostRequestBody"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/mr-sort-inference": {
            "put": {
                "description": "Modify the MR-Sort inference model.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The processing model is not an MR-Sort model."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "New MR-Sort inference model details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MRSortInferenceGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "MR-Sort"
                ],
                "summary": "Modify the MR-Sort inference model",
                "requestBody": {
                    "description": "New MR-Sort inference model details",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MRSortInference"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "description": "Execute an action on the MR-Sort inference model.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    },
                    {
                        "in": "query",
                        "name": "action",
                        "required": true,
                        "description": "The action to execute:\n- ``load`` will load the inference alternatives\n- ``infer`` will try to infer the MR-Sort model from the alternatives",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "infer",
                                "load"
                            ]
                        }
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The model is not an MR-Sort model or ``action`` is incorrect."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "500": {
                        "description": "Inference error"
                    },
                    "200": {
                        "description": "MR-Sort inference model details if action ``load`` is successful, 'ok' if action ``infer`` is successful",
                        "content": {
                            "text/plain": {
                                "schema": {
                                    "type": "string",
                                    "example": "ok"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MRSortInferenceGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "MR-Sort"
                ],
                "summary": "Execute an action on the MR-Sort inference model",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Return the details of the MR-Sort inference model for the project's\ndata.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "The processing model is not an MR-Sort model."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "MR-Sort inference model details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MRSortInferenceGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "MR-Sort"
                ],
                "summary": "Get the MR-Sort inference model details",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/input-graph": {
            "get": {
                "description": "Return the input data subgraph spanning from the project data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project data."
                    },
                    "404": {
                        "description": "The project data doesn't exist."
                    },
                    "200": {
                        "description": "Project data input subgraph",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharedDataListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Get the project data input subgraph",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/output-graph": {
            "get": {
                "description": "Return the output data subgraph spanning from the project data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project data."
                    },
                    "404": {
                        "description": "The project data doesn't exist."
                    },
                    "200": {
                        "description": "Project data output subgraph",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharedDataListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Get the project data output subgraph",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/project-data/{data_id}/replace-attributes": {
            "post": {
                "description": "Replace project data input attributes.\n\nIt replaces usage of old attributes given by new attributes given,\nassuming the old attributes given are attributes of this project's data\nand that the new attributes given are not already used as inputs\nalongside some of the old attributes.\n\nIts main usage is threfore to replace whole project data\n(all their attributes) by completely unused other project data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id the project's data."
                    }
                ],
                "responses": {
                    "400": {
                        "description": "Remapping could not proceed with given arguments."
                    },
                    "403": {
                        "description": "The user is not allowed to access the project."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "Details of the project data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectDataGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Project data"
                ],
                "summary": "Replace project data input attributes",
                "requestBody": {
                    "description": "",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProjectDataReplaceInputsPostRequestBody"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/data/{data_id}/share": {
            "post": {
                "description": "Create a new data share.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the project data."
                    },
                    "404": {
                        "description": "The project data does not exist."
                    },
                    "200": {
                        "description": "New data share details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ShareBaseDataPostResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Data"
                ],
                "summary": "Share data",
                "requestBody": {
                    "description": "New data share details to create",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataShare"
                            }
                        }
                    },
                    "required": true
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "get": {
                "description": "Get the list of shares of a data.",
                "parameters": [
                    {
                        "name": "data_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "The id of the data."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user is not allowed to access the data."
                    },
                    "404": {
                        "description": "The data does not exist."
                    },
                    "200": {
                        "description": "List of shares of the data",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharesGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Data"
                ],
                "summary": "Get list of data shares",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "data_id",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "integer"
                    }
                }
            ]
        },
        "/shares": {
            "get": {
                "description": "Get the list of data shares.",
                "responses": {
                    "403": {
                        "description": "The user is not logged in."
                    },
                    "200": {
                        "description": "List all data shares",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ProjectSharesGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Shares"
                ],
                "summary": "Get list of data shares",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/shares/{uid}": {
            "get": {
                "description": "Return the geometries of a shared data.",
                "parameters": [
                    {
                        "name": "uid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "The uid of a data share."
                    },
                    {
                        "in": "query",
                        "name": "outputFormat",
                        "required": false,
                        "description": "Desired output format (leave blank for zip shapefile)",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "404": {
                        "description": "The share does not exist at this time."
                    },
                    "415": {
                        "description": "Output format is not supported."
                    },
                    "500": {
                        "description": "There was an error with the geometry while creating the file or data type is currently not supported for download."
                    },
                    "200": {
                        "description": "Geodata in specified file format",
                        "content": {
                            "application/octet-stream": {
                                "type": "string",
                                "format": "binary"
                            }
                        }
                    }
                },
                "tags": [
                    "Shares"
                ],
                "summary": "Download a shared geodata"
            },
            "delete": {
                "description": "Delete a data share.",
                "parameters": [
                    {
                        "name": "uid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "The uid of a data share."
                    }
                ],
                "responses": {
                    "403": {
                        "description": "The user cannot delete share on this project."
                    },
                    "404": {
                        "description": "The share or its project data does not exist."
                    },
                    "200": {
                        "description": "Data share deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Message"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "tags": [
                    "Shares"
                ],
                "summary": "Delete a data share",
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "parameters": [
                {
                    "name": "uid",
                    "in": "path",
                    "required": true,
                    "schema": {
                        "type": "string"
                    }
                }
            ]
        },
        "/users": {
            "get": {
                "description": "Return the list of all the users.",
                "tags": [
                    "User"
                ],
                "summary": "Get the list of users",
                "responses": {
                    "200": {
                        "description": "List of all users",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UserListGetResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/login": {
            "get": {
                "description": "Log the user in and return an authentication and a refresh token.",
                "tags": [
                    "Authentication"
                ],
                "summary": "Log the user in",
                "responses": {
                    "200": {
                        "description": "User access and refresh tokens",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UserTokenResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with basic authentification",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "basicAuth": []
                    }
                ]
            }
        },
        "/refresh": {
            "get": {
                "description": "Create a new authentication token from the refresh token.",
                "tags": [
                    "Authentication"
                ],
                "summary": "Create a new authentication token",
                "responses": {
                    "200": {
                        "description": "Refreshed user access token",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UserAccessTokenResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing refresh token",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "refreshAuth": []
                    }
                ]
            }
        },
        "/user": {
            "get": {
                "description": "Return the details of the current user.",
                "tags": [
                    "User"
                ],
                "summary": "Get the details of the current user",
                "responses": {
                    "200": {
                        "description": "Current user details",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/User1"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Error with token authentification",
                        "content": {}
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "GeometryBase": {
                "type": "object",
                "description": "GeoJSon geometry (base schema)",
                "required": [
                    "type"
                ],
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#geometry-objects"
                },
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "Point",
                            "LineString",
                            "Polygon",
                            "MultiPoint",
                            "MultiLineString",
                            "MultiPolygon"
                        ],
                        "description": "the geometry type"
                    }
                }
            },
            "Point3D": {
                "type": "array",
                "description": "Point in 3D space",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id2"
                },
                "minItems": 2,
                "maxItems": 3,
                "items": {
                    "type": "number"
                }
            },
            "Point": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id2"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "$ref": "#/components/schemas/Point3D"
                            }
                        }
                    }
                ]
            },
            "LineString": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id3"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Point3D"
                                }
                            }
                        }
                    }
                ]
            },
            "Polygon": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id4"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "type": "array",
                                "items": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Point3D"
                                    }
                                }
                            }
                        }
                    }
                ]
            },
            "MultiPoint": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id5"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Point3D"
                                }
                            }
                        }
                    }
                ]
            },
            "MultiLineString": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id6"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "type": "array",
                                "items": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Point3D"
                                    }
                                }
                            }
                        }
                    }
                ]
            },
            "MultiPolygon": {
                "type": "object",
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#id6"
                },
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GeometryBase"
                    },
                    {
                        "properties": {
                            "coordinates": {
                                "type": "array",
                                "items": {
                                    "type": "array",
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "$ref": "#/components/schemas/Point3D"
                                        }
                                    }
                                }
                            }
                        }
                    }
                ]
            },
            "Geometry": {
                "description": "GeoJSon geometry",
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#geometry-objects"
                },
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/Point"
                    },
                    {
                        "$ref": "#/components/schemas/LineString"
                    },
                    {
                        "$ref": "#/components/schemas/MultiPoint"
                    },
                    {
                        "$ref": "#/components/schemas/Polygon"
                    },
                    {
                        "$ref": "#/components/schemas/MultiLineString"
                    },
                    {
                        "$ref": "#/components/schemas/MultiPolygon"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "Point": "#/components/schemas/Point",
                        "LineString": "#/components/schemas/LineString",
                        "MultiPoint": "#/components/schemas/MultiPoint",
                        "Polygon": "#/components/schemas/Polygon",
                        "MultiLineString": "#/components/schemas/MultiLineString",
                        "MultiPolygon": "#/components/schemas/MultiPolygon"
                    }
                }
            },
            "GeometryCollection": {
                "type": "object",
                "description": "GeoJSon geometry collection",
                "required": [
                    "type",
                    "geometries"
                ],
                "externalDocs": {
                    "url": "http://geojson.org/geojson-spec.html#geometrycollection"
                },
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "GeometryCollection"
                        ]
                    },
                    "geometries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Geometry"
                        }
                    }
                }
            },
            "FeatureGeo": {
                "type": "object",
                "description": "GeoJSon Feature",
                "required": [
                    "type",
                    "id",
                    "geometry"
                ],
                "externalDocs": {
                    "url": "https://tools.ietf.org/html/rfc7946#section-3.2"
                },
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "Feature"
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "geometry": {
                        "$ref": "#/components/schemas/GeometryCollection"
                    },
                    "properties": {
                        "type": "object"
                    }
                }
            },
            "FeatureCollection": {
                "type": "object",
                "description": "GeoJSon Feature collection",
                "required": [
                    "type",
                    "features"
                ],
                "externalDocs": {
                    "url": "https://tools.ietf.org/html/rfc7946#section-3.3"
                },
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "FeatureCollection"
                        ]
                    },
                    "features": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FeatureGeo"
                        }
                    }
                }
            },
            "BaseData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string"
                    }
                }
            },
            "BaseDataAttribute": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "type": {
                        "readOnly": true,
                        "description": "Type of attribute",
                        "type": "string",
                        "enum": [
                            "quantitative",
                            "nominal",
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "BaseDataAttributeWithValues": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "values": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "object"
                        }
                    },
                    "type": {
                        "readOnly": true,
                        "description": "Type of attribute",
                        "type": "string",
                        "enum": [
                            "quantitative",
                            "nominal",
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "BaseDataFeatures": {
                "type": "object",
                "properties": {
                    "features": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                }
            },
            "DataAttributeQuantitative": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "quantitative"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeNominal": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "nominal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeOrdinal": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "order": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttribute": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DataAttributeQuantitative"
                    },
                    {
                        "$ref": "#/components/schemas/DataAttributeNominal"
                    },
                    {
                        "$ref": "#/components/schemas/DataAttributeOrdinal"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "quantitative": "#/components/schemas/DataAttributeQuantitative",
                        "nominal": "#/components/schemas/DataAttributeNominal",
                        "ordinal": "#/components/schemas/DataAttributeOrdinal"
                    }
                }
            },
            "BaseData1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generated_geo_data",
                            "global_data",
                            "wfs",
                            "wms"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    }
                }
            },
            "BaseDisaggregationCriterion": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "value": {}
                }
            },
            "BaseExplainability": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "categories_rule",
                            "continuous_rule",
                            "geo_buffer",
                            "mrsort",
                            "weighted_sum",
                            "merge_overlap",
                            "dissolve_adjacent",
                            "zone_proposition"
                        ]
                    }
                }
            },
            "BaseGeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generated_geo_data",
                            "global_data",
                            "wfs",
                            "wms"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "extent_filter": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    }
                }
            },
            "BaseModelExplainability": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion"
                        }
                    }
                }
            },
            "Base": {
                "type": "object",
                "properties": {}
            },
            "BaseDataAttribute1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "type": {
                        "readOnly": true,
                        "description": "Type of attribute",
                        "type": "string",
                        "enum": [
                            "quantitative",
                            "nominal",
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "PrefDefaultValuesAttribute": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string",
                        "enum": [
                            "quantitative",
                            "nominal",
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "type"
                ]
            },
            "DefaultValue": {
                "type": "object",
                "properties": {
                    "attribute": {
                        "type": "integer"
                    },
                    "value": {
                        "nullable": true
                    }
                }
            },
            "ContinuousRuleCreation": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "continuous_rule"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "rule": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ContinuousRule": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "continuous_rule"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "rule": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DataAttributeGetResponse": {
                "type": "object",
                "properties": {
                    "attribute": {
                        "$ref": "#/components/schemas/DataAttribute"
                    }
                }
            },
            "DataAttributeNominal1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "nominal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeNominalWithValues": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "values": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "object"
                        }
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "nominal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeOrdinal1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "order": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeOrdinalWithValues": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "order": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "values": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "object"
                        }
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "ordinal"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeQuantitative1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "quantitative"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeQuantitativeWithValues": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    },
                    "values": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "object"
                        }
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "quantitative"
                        ]
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "DataAttributeRemapping": {
                "type": "object",
                "properties": {
                    "old_attribute": {
                        "type": "integer"
                    },
                    "new_attribute": {
                        "type": "integer"
                    }
                },
                "required": [
                    "new_attribute",
                    "old_attribute"
                ]
            },
            "DataAttributeWithValues": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DataAttributeQuantitativeWithValues"
                    },
                    {
                        "$ref": "#/components/schemas/DataAttributeNominalWithValues"
                    },
                    {
                        "$ref": "#/components/schemas/DataAttributeOrdinalWithValues"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "quantitative": "#/components/schemas/DataAttributeQuantitativeWithValues",
                        "nominal": "#/components/schemas/DataAttributeNominalWithValues",
                        "ordinal": "#/components/schemas/DataAttributeOrdinalWithValues"
                    }
                }
            },
            "DataAttributeWithValuesGetResponse": {
                "type": "object",
                "properties": {
                    "attribute": {
                        "$ref": "#/components/schemas/DataAttributeWithValues"
                    }
                }
            },
            "User": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "username": {
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "Project": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "manager": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    },
                    "extent": {
                        "minItems": 4,
                        "maxItems": 4,
                        "nullable": true,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "is_template": {
                        "type": "boolean",
                        "readOnly": true
                    },
                    "data_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    }
                }
            },
            "DiscreteRulesCategory": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    }
                }
            },
            "DiscreteRulesCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "categories_rule"
                        ]
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteRulesCategory"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ContinuousRuleCreation1": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "continuous_rule"
                        ]
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "rule": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "GeoBufferCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "geo_buffer"
                        ]
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "radius": {
                        "type": "integer",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DiscreteCategory": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "position": {
                        "type": "integer",
                        "writeOnly": true,
                        "nullable": true
                    }
                }
            },
            "BaseDataAttribute2": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData"
                            }
                        ]
                    }
                },
                "required": [
                    "name"
                ]
            },
            "MRSortCriterion": {
                "type": "object",
                "properties": {
                    "attribute_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "attribute": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseDataAttribute2"
                            }
                        ]
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "type": "number"
                        },
                        "nullable": true
                    },
                    "weight": {
                        "type": "number",
                        "nullable": true
                    },
                    "maximize": {
                        "type": "boolean"
                    }
                }
            },
            "MRSortCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "mrsort"
                        ]
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteCategory"
                        }
                    },
                    "criteria": {
                        "$ref": "#/components/schemas/MRSortCriterion"
                    },
                    "majority_threshold": {
                        "type": "number",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "WeightedSumOperand": {
                "type": "object",
                "properties": {
                    "attribute": {
                        "type": "integer"
                    },
                    "weight": {
                        "type": "number",
                        "nullable": true
                    }
                }
            },
            "WeightedSumCreation": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "weighted_sum"
                        ]
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "operands": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WeightedSumOperand"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "MergeOverlapModelCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "merge_overlap"
                        ]
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "keep_overlap": {
                        "type": "string",
                        "enum": [
                            "min",
                            "max",
                            "sum",
                            "average"
                        ]
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DissolveAdjacentModelCreation": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "dissolve_adjacent"
                        ]
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ZonePropositionGeneratorCreation": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "zone_proposition"
                        ]
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "geo_size": {
                        "type": "number",
                        "default": 0.0
                    },
                    "size": {
                        "type": "integer",
                        "default": 80,
                        "minimum": 1,
                        "maximum": 1000
                    },
                    "mutation": {
                        "type": "number",
                        "default": 0.02,
                        "minimum": 0.0,
                        "maximum": 1.0
                    },
                    "children": {
                        "type": "integer",
                        "default": 60,
                        "minimum": 0
                    },
                    "filter_clusters": {
                        "type": "boolean",
                        "default": true
                    },
                    "iterations": {
                        "type": "integer",
                        "nullable": true
                    },
                    "duration": {
                        "type": "number",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ProcessingModelCreation": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DiscreteRulesCreation"
                    },
                    {
                        "$ref": "#/components/schemas/ContinuousRuleCreation1"
                    },
                    {
                        "$ref": "#/components/schemas/GeoBufferCreation"
                    },
                    {
                        "$ref": "#/components/schemas/MRSortCreation"
                    },
                    {
                        "$ref": "#/components/schemas/WeightedSumCreation"
                    },
                    {
                        "$ref": "#/components/schemas/MergeOverlapModelCreation"
                    },
                    {
                        "$ref": "#/components/schemas/DissolveAdjacentModelCreation"
                    },
                    {
                        "$ref": "#/components/schemas/ZonePropositionGeneratorCreation"
                    }
                ],
                "discriminator": {
                    "propertyName": "model_type",
                    "mapping": {
                        "categories_rule": "#/components/schemas/DiscreteRulesCreation",
                        "continuous_rule": "#/components/schemas/ContinuousRuleCreation1",
                        "geo_buffer": "#/components/schemas/GeoBufferCreation",
                        "mrsort": "#/components/schemas/MRSortCreation",
                        "weighted_sum": "#/components/schemas/WeightedSumCreation",
                        "merge_overlap": "#/components/schemas/MergeOverlapModelCreation",
                        "dissolve_adjacent": "#/components/schemas/DissolveAdjacentModelCreation",
                        "zone_proposition": "#/components/schemas/ZonePropositionGeneratorCreation"
                    }
                }
            },
            "BaseDataAttribute3": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "description": "Type of attribute",
                        "type": "string",
                        "enum": [
                            "quantitative",
                            "nominal",
                            "ordinal"
                        ]
                    },
                    "statistics": {
                        "readOnly": true,
                        "nullable": true
                    }
                },
                "required": [
                    "name",
                    "type"
                ]
            },
            "PrefModelBase": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "categories_rule",
                            "continuous_rule",
                            "geo_buffer",
                            "mrsort",
                            "weighted_sum",
                            "merge_overlap",
                            "dissolve_adjacent",
                            "zone_proposition"
                        ]
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DataGeneratorCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "generator"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "processing_model": {
                        "$ref": "#/components/schemas/ProcessingModelCreation"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    },
                    "proc_models_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefModelBase"
                        }
                    }
                },
                "required": [
                    "data_type",
                    "name"
                ]
            },
            "DataGenerator": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "generator"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "processing_model": {
                        "$ref": "#/components/schemas/ProcessingModelCreation"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    },
                    "proc_models_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefModelBase"
                        }
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "DataGeoCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_id",
                    "data_type"
                ]
            },
            "DataGeo": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "GlobalData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "global_data"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "properties": {
                        "description": "properties organized by property name",
                        "type": "object"
                    },
                    "upload_user": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    }
                }
            },
            "GeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "original_name": {
                        "type": "string",
                        "readOnly": true,
                        "nullable": true
                    },
                    "source_driver": {
                        "type": "string",
                        "readOnly": true,
                        "nullable": true
                    },
                    "upload_user": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "extent_filter": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    }
                }
            },
            "GeneratedGeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "generated_geo_data"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project_data": {
                        "readOnly": true,
                        "type": "integer"
                    }
                }
            },
            "WFSGeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "wfs"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "extent_filter": {
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    },
                    "original_name": {
                        "type": "string",
                        "readOnly": true,
                        "nullable": true
                    },
                    "title": {
                        "type": "string",
                        "nullable": true
                    },
                    "url": {
                        "type": "string",
                        "readOnly": true
                    },
                    "keywords": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    },
                    "version": {
                        "type": "string",
                        "nullable": true
                    },
                    "feature_type": {
                        "type": "string",
                        "readOnly": true
                    },
                    "upload_user": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    }
                },
                "required": [
                    "feature_type",
                    "url"
                ]
            },
            "WMSGeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "wms"
                        ]
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "extent_filter": {
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    },
                    "original_name": {
                        "type": "string",
                        "readOnly": true,
                        "nullable": true
                    },
                    "title": {
                        "type": "string",
                        "nullable": true
                    },
                    "url": {
                        "type": "string",
                        "readOnly": true
                    },
                    "keywords": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    },
                    "version": {
                        "type": "string",
                        "nullable": true
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        }
                    },
                    "start": {
                        "type": "number",
                        "nullable": true
                    },
                    "stop": {
                        "type": "number",
                        "nullable": true
                    },
                    "step": {
                        "type": "number",
                        "nullable": true
                    },
                    "layer": {
                        "type": "string",
                        "readOnly": true
                    },
                    "resolution": {
                        "type": "number",
                        "nullable": true
                    },
                    "upload_user": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    }
                },
                "required": [
                    "layer",
                    "url"
                ]
            },
            "Data": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/GlobalData"
                    },
                    {
                        "$ref": "#/components/schemas/GeoData"
                    },
                    {
                        "$ref": "#/components/schemas/GeneratedGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/WFSGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/WMSGeoData"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "global_data": "#/components/schemas/GlobalData",
                        "geo_data": "#/components/schemas/GeoData",
                        "generated_geo_data": "#/components/schemas/GeneratedGeoData",
                        "wfs": "#/components/schemas/WFSGeoData",
                        "wms": "#/components/schemas/WMSGeoData"
                    }
                }
            },
            "BaseData2": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generated_geo_data",
                            "global_data",
                            "wfs",
                            "wms"
                        ]
                    }
                }
            },
            "DataShare": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "uid": {
                        "type": "string",
                        "format": "uuid",
                        "readOnly": true
                    },
                    "expiration": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "expired": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseData2"
                            }
                        ]
                    }
                }
            },
            "WFSGeoData1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "wfs"
                        ]
                    }
                }
            },
            "WMSGeoData1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "wms"
                        ]
                    }
                }
            },
            "DataStreamSubStream": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/WFSGeoData1"
                    },
                    {
                        "$ref": "#/components/schemas/WMSGeoData1"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "wfs": "#/components/schemas/WFSGeoData1",
                        "wms": "#/components/schemas/WMSGeoData1"
                    }
                }
            },
            "DataStreamCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "data_stream"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "stream": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataStreamSubStream"
                            }
                        ]
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "stream_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        },
                        "nullable": true
                    },
                    "start": {
                        "type": "number",
                        "nullable": true
                    },
                    "step": {
                        "type": "number",
                        "nullable": true
                    },
                    "stop": {
                        "type": "number",
                        "nullable": true
                    },
                    "resolution": {
                        "type": "number",
                        "nullable": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_type",
                    "stream_id"
                ]
            },
            "DataStream": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "data_stream"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "stream": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataStreamSubStream"
                            }
                        ]
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "stream_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        },
                        "nullable": true
                    },
                    "start": {
                        "type": "number",
                        "nullable": true
                    },
                    "step": {
                        "type": "number",
                        "nullable": true
                    },
                    "stop": {
                        "type": "number",
                        "nullable": true
                    },
                    "resolution": {
                        "type": "number",
                        "nullable": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "DataTypeSet": {
                "type": "object",
                "properties": {
                    "type": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "enum": [
                                "geo_data",
                                "generated_geo_data",
                                "global_data",
                                "wfs",
                                "wms"
                            ]
                        }
                    }
                }
            },
            "DefaultValueDeletion": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    }
                },
                "required": [
                    "attribute",
                    "name"
                ]
            },
            "DefaultValue1": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "default_value": {}
                },
                "required": [
                    "attribute",
                    "default_value",
                    "name"
                ]
            },
            "DisaggregationCriterionWeightedSum": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "value": {},
                    "weight": {
                        "type": "number"
                    }
                }
            },
            "DisaggregationCriterionZoneProposition": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "value": {},
                    "numeric_value": {
                        "type": "number"
                    },
                    "area": {
                        "type": "number"
                    },
                    "fitness": {
                        "type": "number"
                    }
                }
            },
            "DiscreteRulesCategory1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "position": {
                        "type": "integer",
                        "nullable": true
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    }
                }
            },
            "DiscreteRulesCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "categories_rule"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteRulesCategory"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DiscreteRules": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "categories_rule"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteRulesCategory"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DissolveAdjacentModelCreation1": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "dissolve_adjacent"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "DissolveAdjacentModel": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "dissolve_adjacent"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ExplainabilityAttributeWithValues": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "values": {
                        "type": "array",
                        "items": {}
                    }
                }
            },
            "ExplainabilityBuffer": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "geo_buffer"
                        ]
                    },
                    "radius": {
                        "type": "integer"
                    }
                }
            },
            "ExplainabilityContinuousRule": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "continuous_rule"
                        ]
                    }
                }
            },
            "ExplainabilityDiscreteModel": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "categories_rule"
                        ]
                    },
                    "rule": {
                        "type": "string"
                    }
                }
            },
            "ExplainabilityMRSortCriterion": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "maximize": {
                        "type": "boolean"
                    }
                }
            },
            "ProfileCriterion": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    },
                    "value": {},
                    "weight": {
                        "type": "number"
                    }
                }
            },
            "BaseDisaggregationCriterion1": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    },
                    "attribute": {
                        "type": "string"
                    }
                }
            },
            "ExplainabilityMRSort": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "mrsort"
                        ]
                    },
                    "lower": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfileCriterion"
                        },
                        "nullable": true
                    },
                    "upper": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfileCriterion"
                        },
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "criteria": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDisaggregationCriterion1"
                        }
                    },
                    "majority_threshold": {
                        "type": "number"
                    }
                }
            },
            "ExplainabilityMergedFeatures": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "dissolve_adjacent"
                        ]
                    }
                }
            },
            "ExplainabilityOverlap": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "merge_overlap"
                        ]
                    },
                    "aggregated": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ExplainabilityAttributeWithValues"
                        }
                    },
                    "keep_overlap": {
                        "type": "string",
                        "enum": [
                            "min",
                            "max",
                            "sum",
                            "average"
                        ]
                    }
                }
            },
            "ExplainabilityWeightedSum": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DisaggregationCriterionWeightedSum"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "weighted_sum"
                        ]
                    }
                }
            },
            "ExplainabilityZoneProposition": {
                "type": "object",
                "properties": {
                    "disaggregation": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DisaggregationCriterionZoneProposition"
                        }
                    },
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "zone_proposition"
                        ]
                    }
                }
            },
            "Explainability": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/ExplainabilityDiscreteModel"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityContinuousRule"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityBuffer"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityMRSort"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityWeightedSum"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityOverlap"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityMergedFeatures"
                    },
                    {
                        "$ref": "#/components/schemas/ExplainabilityZoneProposition"
                    }
                ],
                "discriminator": {
                    "propertyName": "model_type",
                    "mapping": {
                        "categories_rule": "#/components/schemas/ExplainabilityDiscreteModel",
                        "continuous_rule": "#/components/schemas/ExplainabilityContinuousRule",
                        "geo_buffer": "#/components/schemas/ExplainabilityBuffer",
                        "mrsort": "#/components/schemas/ExplainabilityMRSort",
                        "weighted_sum": "#/components/schemas/ExplainabilityWeightedSum",
                        "merge_overlap": "#/components/schemas/ExplainabilityOverlap",
                        "dissolve_adjacent": "#/components/schemas/ExplainabilityMergedFeatures",
                        "zone_proposition": "#/components/schemas/ExplainabilityZoneProposition"
                    }
                }
            },
            "Feature": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "feature",
                            "geo_feature"
                        ]
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "properties": {
                        "readOnly": true,
                        "description": "feature properties organized by property name",
                        "type": "object"
                    },
                    "explainability": {
                        "readOnly": true,
                        "$ref": "#/components/schemas/Explainability"
                    },
                    "execution_artifact": {
                        "readOnly": true,
                        "$ref": "#/components/schemas/Explainability"
                    },
                    "input_data": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseData1"
                        }
                    },
                    "output_data": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseData1"
                        }
                    }
                }
            },
            "FeatureResponse": {
                "type": "object",
                "properties": {
                    "feature": {
                        "$ref": "#/components/schemas/Feature"
                    }
                }
            },
            "GeoBufferCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_buffer"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "radius": {
                        "type": "integer",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "GeoBuffer": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_buffer"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "radius": {
                        "type": "integer",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "GeoDataPermission": {
                "type": "object",
                "properties": {
                    "user": {
                        "type": "integer"
                    }
                }
            },
            "GeoDataAccess": {
                "type": "object",
                "properties": {
                    "is_public": {
                        "type": "boolean"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/GeoDataPermission"
                        }
                    }
                }
            },
            "GeoDataAccessResponse": {
                "type": "object",
                "properties": {
                    "access": {
                        "$ref": "#/components/schemas/GeoDataAccess"
                    }
                }
            },
            "GeoOnlyData": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/GeoData"
                    },
                    {
                        "$ref": "#/components/schemas/GeneratedGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/WFSGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/WMSGeoData"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "geo_data": "#/components/schemas/GeoData",
                        "generated_geo_data": "#/components/schemas/GeneratedGeoData",
                        "wfs": "#/components/schemas/WFSGeoData",
                        "wms": "#/components/schemas/WMSGeoData"
                    }
                }
            },
            "GeoDataGetResponse": {
                "type": "object",
                "properties": {
                    "geodata": {
                        "$ref": "#/components/schemas/GeoOnlyData"
                    }
                }
            },
            "GeoDataListResponse": {
                "type": "object",
                "properties": {
                    "geodata": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/GeoData"
                        }
                    }
                }
            },
            "GlobalDataPermission": {
                "type": "object",
                "properties": {
                    "user": {
                        "type": "integer"
                    }
                }
            },
            "GlobalDataAccess": {
                "type": "object",
                "properties": {
                    "is_public": {
                        "type": "boolean"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/GlobalDataPermission"
                        }
                    }
                }
            },
            "GlobalDataAccessResponse": {
                "type": "object",
                "properties": {
                    "access": {
                        "$ref": "#/components/schemas/GlobalDataAccess"
                    }
                }
            },
            "GlobalDataCreation": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "properties": {
                        "type": "object",
                        "description": "properties organized by property name"
                    }
                },
                "required": [
                    "name",
                    "properties"
                ]
            },
            "MRSortCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "mrsort"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteCategory"
                        }
                    },
                    "criteria": {
                        "$ref": "#/components/schemas/MRSortCriterion"
                    },
                    "majority_threshold": {
                        "type": "number",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "MRSortCriterion1": {
                "type": "object",
                "properties": {
                    "attribute_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "mrsort_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "attribute": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseDataAttribute2"
                            }
                        ]
                    },
                    "profiles": {
                        "type": "array",
                        "items": {
                            "type": "number"
                        },
                        "nullable": true
                    },
                    "weight": {
                        "type": "number",
                        "nullable": true
                    },
                    "maximize": {
                        "type": "boolean"
                    }
                }
            },
            "MRSortInferenceAlternative": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "category_id": {
                        "type": "integer",
                        "nullable": true
                    },
                    "values": {
                        "readOnly": true
                    }
                }
            },
            "MRSortInferenceCriterion": {
                "type": "object",
                "properties": {
                    "attribute_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "mrsort_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "maximize": {
                        "type": "boolean"
                    },
                    "attribute": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseDataAttribute2"
                            }
                        ]
                    }
                }
            },
            "MRSortInferenceCriterion1": {
                "type": "object",
                "properties": {
                    "attribute_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "maximize": {
                        "type": "boolean"
                    },
                    "attribute": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/BaseDataAttribute2"
                            }
                        ]
                    }
                }
            },
            "DiscreteCategory1": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    }
                }
            },
            "MRSortInference": {
                "type": "object",
                "properties": {
                    "criteria": {
                        "$ref": "#/components/schemas/MRSortInferenceCriterion1"
                    },
                    "categories": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteCategory1"
                        }
                    },
                    "alternatives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MRSortInferenceAlternative"
                        }
                    }
                }
            },
            "MRSortInferenceGetResponse": {
                "type": "object",
                "properties": {
                    "inference_data": {
                        "$ref": "#/components/schemas/MRSortInference"
                    }
                }
            },
            "MRSort": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "mrsort"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "categories": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DiscreteCategory"
                        }
                    },
                    "criteria": {
                        "$ref": "#/components/schemas/MRSortCriterion"
                    },
                    "majority_threshold": {
                        "type": "number",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "MergeOverlapModelCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "merge_overlap"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "keep_overlap": {
                        "type": "string",
                        "enum": [
                            "min",
                            "max",
                            "sum",
                            "average"
                        ]
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "MergeOverlapModel": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "merge_overlap"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "keep_overlap": {
                        "type": "string",
                        "enum": [
                            "min",
                            "max",
                            "sum",
                            "average"
                        ]
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "Message": {
                "type": "object",
                "properties": {
                    "message": {
                        "type": "string"
                    }
                }
            },
            "OneOf": {
                "oneOf": [],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {}
                }
            },
            "OneOfWithType": {
                "oneOf": [],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {}
                }
            },
            "PrefDefaultValuesBase": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "type": "string",
                        "enum": [
                            "categories_rule",
                            "continuous_rule",
                            "geo_buffer",
                            "mrsort",
                            "weighted_sum",
                            "merge_overlap",
                            "dissolve_adjacent",
                            "zone_proposition"
                        ]
                    },
                    "data_generator": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "PrefModelBaseCreation": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "categories_rule",
                            "continuous_rule",
                            "geo_buffer",
                            "mrsort",
                            "weighted_sum",
                            "merge_overlap",
                            "dissolve_adjacent",
                            "zone_proposition"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "PrefModelBase1": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "categories_rule",
                            "continuous_rule",
                            "geo_buffer",
                            "mrsort",
                            "weighted_sum",
                            "merge_overlap",
                            "dissolve_adjacent",
                            "zone_proposition"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "WeightedSum": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "weighted_sum"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "operands": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WeightedSumOperand"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ZonePropositionGenerator": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "zone_proposition"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "geo_size": {
                        "type": "number"
                    },
                    "size": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 1000
                    },
                    "mutation": {
                        "type": "number",
                        "minimum": 0.0,
                        "maximum": 1.0
                    },
                    "children": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "filter_clusters": {
                        "type": "boolean"
                    },
                    "iterations": {
                        "type": "integer",
                        "nullable": true
                    },
                    "duration": {
                        "type": "number",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "ProcessingModel": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DiscreteRules"
                    },
                    {
                        "$ref": "#/components/schemas/ContinuousRule"
                    },
                    {
                        "$ref": "#/components/schemas/GeoBuffer"
                    },
                    {
                        "$ref": "#/components/schemas/MRSort"
                    },
                    {
                        "$ref": "#/components/schemas/WeightedSum"
                    },
                    {
                        "$ref": "#/components/schemas/MergeOverlapModel"
                    },
                    {
                        "$ref": "#/components/schemas/DissolveAdjacentModel"
                    },
                    {
                        "$ref": "#/components/schemas/ZonePropositionGenerator"
                    }
                ],
                "discriminator": {
                    "propertyName": "model_type",
                    "mapping": {
                        "categories_rule": "#/components/schemas/DiscreteRules",
                        "continuous_rule": "#/components/schemas/ContinuousRule",
                        "geo_buffer": "#/components/schemas/GeoBuffer",
                        "mrsort": "#/components/schemas/MRSort",
                        "weighted_sum": "#/components/schemas/WeightedSum",
                        "merge_overlap": "#/components/schemas/MergeOverlapModel",
                        "dissolve_adjacent": "#/components/schemas/DissolveAdjacentModel",
                        "zone_proposition": "#/components/schemas/ZonePropositionGenerator"
                    }
                }
            },
            "ProjectPermission": {
                "type": "object",
                "properties": {
                    "user": {
                        "type": "integer"
                    }
                }
            },
            "ProjectAccess": {
                "type": "object",
                "properties": {
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectPermission"
                        }
                    },
                    "is_public": {
                        "type": "boolean"
                    }
                }
            },
            "ProjectCreation": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "manager": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    },
                    "extent": {
                        "minItems": 4,
                        "maxItems": 4,
                        "nullable": true,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "is_template": {
                        "type": "boolean",
                        "readOnly": true
                    },
                    "data_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "is_public": {
                        "type": "boolean",
                        "readOnly": true
                    }
                },
                "required": [
                    "name"
                ]
            },
            "ProjectDataActiveModelPutResponse": {
                "type": "object",
                "properties": {
                    "processing_model": {
                        "$ref": "#/components/schemas/ProcessingModel"
                    }
                }
            },
            "ProjectDataBaseCreation": {
                "type": "object",
                "properties": {
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generator",
                            "global_data",
                            "data_stream"
                        ]
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "ProjectDataBase": {
                "type": "object",
                "properties": {
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generator",
                            "global_data",
                            "data_stream"
                        ]
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "DataGeoCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "geo_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_id",
                    "data_type"
                ]
            },
            "DataGeneratorCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "generator"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "processing_model": {
                        "$ref": "#/components/schemas/ProcessingModelCreation"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    },
                    "proc_models_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefModelBase"
                        }
                    }
                },
                "required": [
                    "data_type",
                    "name"
                ]
            },
            "ProjectGlobalDataCreation": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "global_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_id",
                    "data_type"
                ]
            },
            "DataStreamCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "data_stream"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "stream": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataStreamSubStream"
                            }
                        ]
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "stream_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        },
                        "nullable": true
                    },
                    "start": {
                        "type": "number",
                        "nullable": true
                    },
                    "step": {
                        "type": "number",
                        "nullable": true
                    },
                    "stop": {
                        "type": "number",
                        "nullable": true
                    },
                    "resolution": {
                        "type": "number",
                        "nullable": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_type",
                    "stream_id"
                ]
            },
            "ProjectDataCreation": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DataGeoCreation1"
                    },
                    {
                        "$ref": "#/components/schemas/DataGeneratorCreation1"
                    },
                    {
                        "$ref": "#/components/schemas/ProjectGlobalDataCreation"
                    },
                    {
                        "$ref": "#/components/schemas/DataStreamCreation1"
                    }
                ],
                "discriminator": {
                    "propertyName": "data_type",
                    "mapping": {
                        "geo_data": "#/components/schemas/DataGeoCreation1",
                        "generator": "#/components/schemas/DataGeneratorCreation1",
                        "global_data": "#/components/schemas/ProjectGlobalDataCreation",
                        "data_stream": "#/components/schemas/DataStreamCreation1"
                    }
                }
            },
            "ProjectDataGeneratorCreation": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DataGeneratorCreation1"
                    }
                ],
                "discriminator": {
                    "propertyName": "data_type",
                    "mapping": {
                        "generator": "#/components/schemas/DataGeneratorCreation1"
                    }
                }
            },
            "ProjectGlobalData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "global_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "ProjectData": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/DataGeo"
                    },
                    {
                        "$ref": "#/components/schemas/DataGenerator"
                    },
                    {
                        "$ref": "#/components/schemas/ProjectGlobalData"
                    },
                    {
                        "$ref": "#/components/schemas/DataStream"
                    }
                ],
                "discriminator": {
                    "propertyName": "data_type",
                    "mapping": {
                        "geo_data": "#/components/schemas/DataGeo",
                        "generator": "#/components/schemas/DataGenerator",
                        "global_data": "#/components/schemas/ProjectGlobalData",
                        "data_stream": "#/components/schemas/DataStream"
                    }
                }
            },
            "ProjectDataGetResponse": {
                "type": "object",
                "properties": {
                    "project_data": {
                        "$ref": "#/components/schemas/ProjectData"
                    }
                }
            },
            "ProjectDataBase1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generator",
                            "global_data",
                            "data_stream"
                        ]
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "ProjectDataInputListPostResponse": {
                "type": "object",
                "properties": {
                    "input_data": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectDataBase1"
                        }
                    }
                }
            },
            "ProjectDataListGetResponse": {
                "type": "object",
                "properties": {
                    "project_data": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectData"
                        }
                    }
                }
            },
            "ProjectDataModelChangePostRequestBody": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "required": [
                    "id"
                ]
            },
            "ProjectProcessTask": {
                "type": "object",
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "process_project_data"
                        ]
                    },
                    "info": {
                        "readOnly": true,
                        "type": "object",
                        "nullable": true
                    },
                    "task_id": {
                        "type": "string",
                        "nullable": true
                    },
                    "started_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "finished_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "state": {
                        "type": "string",
                        "nullable": true
                    },
                    "error_message": {
                        "type": "string",
                        "nullable": true
                    },
                    "params": {
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    }
                }
            },
            "ProjectDataPostResponse": {
                "type": "object",
                "properties": {
                    "task": {
                        "$ref": "#/components/schemas/ProjectProcessTask"
                    }
                }
            },
            "ProjectDataReplaceInputsPostRequestBody": {
                "type": "object",
                "properties": {
                    "attributes_mapping": {
                        "description": "list mapping of old data attributes to new ones",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttributeRemapping"
                        }
                    }
                },
                "required": [
                    "attributes_mapping"
                ]
            },
            "ProjectFromTemplateRequestBody": {
                "type": "object",
                "properties": {
                    "template": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "extent": {
                        "type": "array",
                        "minItems": 4,
                        "maxItems": 4,
                        "items": {
                            "type": "number"
                        },
                        "nullable": true
                    }
                },
                "required": [
                    "template"
                ]
            },
            "ProjectGetResponse": {
                "type": "object",
                "properties": {
                    "project": {
                        "$ref": "#/components/schemas/Project"
                    }
                }
            },
            "ProjectGlobalDataCreation1": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "global_data"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "modified_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "last_update": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "project": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Project"
                            }
                        ]
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute3"
                        }
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "used_input_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "used_output_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "data_id": {
                        "type": "integer",
                        "writeOnly": true
                    },
                    "is_outdated": {
                        "readOnly": true,
                        "type": "boolean"
                    }
                },
                "required": [
                    "data_id",
                    "data_type"
                ]
            },
            "ProjectListGetResponse": {
                "type": "object",
                "properties": {
                    "projects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Project"
                        }
                    }
                }
            },
            "ProjectPermissionGetResponse": {
                "type": "object",
                "properties": {
                    "access": {
                        "$ref": "#/components/schemas/ProjectAccess"
                    }
                }
            },
            "ProjectSharedBaseData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "data": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generator",
                            "global_data",
                            "data_stream"
                        ]
                    },
                    "is_outdated": {
                        "type": "boolean"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                }
            },
            "ProjectSharedGeoData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "data": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "geo_data"
                        ]
                    },
                    "is_outdated": {
                        "type": "boolean"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                }
            },
            "ProjectSharedGeneratedData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "data": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "generator"
                        ]
                    },
                    "is_outdated": {
                        "type": "boolean"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "processing_model": {
                        "$ref": "#/components/schemas/ProcessingModel"
                    }
                }
            },
            "ProjectSharedGlobalData": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "data": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "global_data"
                        ]
                    },
                    "is_outdated": {
                        "type": "boolean"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                }
            },
            "ProjectSharedDataStream": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "data": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data_type": {
                        "type": "string",
                        "enum": [
                            "data_stream"
                        ]
                    },
                    "is_outdated": {
                        "type": "boolean"
                    },
                    "input_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "output_data": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    },
                    "stream": {
                        "$ref": "#/components/schemas/DataStreamSubStream"
                    }
                }
            },
            "ProjectSharedData": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/ProjectSharedGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/ProjectSharedGeneratedData"
                    },
                    {
                        "$ref": "#/components/schemas/ProjectSharedGlobalData"
                    },
                    {
                        "$ref": "#/components/schemas/ProjectSharedDataStream"
                    }
                ],
                "discriminator": {
                    "propertyName": "data_type",
                    "mapping": {
                        "geo_data": "#/components/schemas/ProjectSharedGeoData",
                        "generator": "#/components/schemas/ProjectSharedGeneratedData",
                        "global_data": "#/components/schemas/ProjectSharedGlobalData",
                        "data_stream": "#/components/schemas/ProjectSharedDataStream"
                    }
                }
            },
            "ProjectSharedDataListGetResponse": {
                "type": "object",
                "properties": {
                    "data_list": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectSharedData"
                        }
                    }
                }
            },
            "ProjectDataBase2": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "data": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "data_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "geo_data",
                            "generator",
                            "global_data",
                            "data_stream"
                        ]
                    }
                },
                "required": [
                    "data_type"
                ]
            },
            "ProjectSharedDataListPostResponse": {
                "type": "object",
                "properties": {
                    "data_list": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectDataBase2"
                        }
                    }
                }
            },
            "ProjectSharesGetResponse": {
                "type": "object",
                "properties": {
                    "shared": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataShare"
                        }
                    }
                }
            },
            "ProjectTask": {
                "type": "object",
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "process_project_data",
                            "update_stream"
                        ]
                    },
                    "info": {
                        "readOnly": true,
                        "type": "object",
                        "nullable": true
                    },
                    "task_id": {
                        "type": "string",
                        "nullable": true
                    },
                    "started_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "finished_at": {
                        "type": "string",
                        "format": "date-time",
                        "nullable": true
                    },
                    "state": {
                        "type": "string",
                        "nullable": true
                    },
                    "error_message": {
                        "type": "string",
                        "nullable": true
                    },
                    "params": {
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    }
                },
                "required": [
                    "type"
                ]
            },
            "ProjectTaskListGetResponse": {
                "type": "object",
                "properties": {
                    "tasks": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectTask"
                        }
                    },
                    "total": {
                        "type": "integer"
                    }
                }
            },
            "Template": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string",
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "readOnly": true,
                        "nullable": true
                    },
                    "manager": {
                        "readOnly": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/User"
                            }
                        ]
                    }
                },
                "required": [
                    "name"
                ]
            },
            "ProjectTemplateListGetResponse": {
                "type": "object",
                "properties": {
                    "templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Template"
                        }
                    }
                }
            },
            "ProjectTemplatePostResponse": {
                "type": "object",
                "properties": {
                    "template": {
                        "$ref": "#/components/schemas/Template"
                    }
                }
            },
            "ShareBaseDataPostResponse": {
                "type": "object",
                "properties": {
                    "shared": {
                        "$ref": "#/components/schemas/DataShare"
                    }
                }
            },
            "StreamGeoDataPermission": {
                "type": "object",
                "properties": {
                    "user": {
                        "type": "integer"
                    }
                }
            },
            "StreamGeoDataAccess": {
                "type": "object",
                "properties": {
                    "is_public": {
                        "type": "boolean"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/StreamGeoDataPermission"
                        }
                    }
                }
            },
            "StreamGeoDataAccessResponse": {
                "type": "object",
                "properties": {
                    "access": {
                        "$ref": "#/components/schemas/StreamGeoDataAccess"
                    }
                }
            },
            "StreamGeoData": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/WFSGeoData"
                    },
                    {
                        "$ref": "#/components/schemas/WMSGeoData"
                    }
                ],
                "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                        "wfs": "#/components/schemas/WFSGeoData",
                        "wms": "#/components/schemas/WMSGeoData"
                    }
                }
            },
            "StreamGeoDataListResponse": {
                "type": "object",
                "properties": {
                    "stream": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/StreamGeoData"
                        }
                    }
                }
            },
            "StreamGeoDataPostRequest": {
                "type": "object",
                "properties": {
                    "url": {
                        "type": "string"
                    }
                },
                "required": [
                    "url"
                ]
            },
            "StreamGeoDataResponse": {
                "type": "object",
                "properties": {
                    "stream": {
                        "$ref": "#/components/schemas/StreamGeoData"
                    }
                }
            },
            "TaskGetResponse": {
                "type": "object",
                "properties": {
                    "task": {
                        "$ref": "#/components/schemas/ProjectTask"
                    }
                }
            },
            "TemplatePermission": {
                "type": "object",
                "properties": {
                    "user": {
                        "type": "integer"
                    }
                }
            },
            "TemplateAccess": {
                "type": "object",
                "properties": {
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TemplatePermission"
                        }
                    },
                    "is_public": {
                        "type": "boolean"
                    }
                }
            },
            "TemplatePermissionGetResponse": {
                "type": "object",
                "properties": {
                    "access": {
                        "$ref": "#/components/schemas/TemplateAccess"
                    }
                }
            },
            "UserAccessTokenResponse": {
                "type": "object",
                "properties": {
                    "access_token": {
                        "type": "string"
                    },
                    "token_type": {
                        "type": "string"
                    }
                }
            },
            "UserListGetResponse": {
                "type": "object",
                "properties": {
                    "users": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/User"
                        }
                    }
                }
            },
            "User1": {
                "type": "object",
                "properties": {
                    "username": {
                        "type": "string",
                        "nullable": true
                    },
                    "email": {
                        "type": "string",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    }
                }
            },
            "UserTokenResponse": {
                "type": "object",
                "properties": {
                    "access_token": {
                        "type": "string"
                    },
                    "token_type": {
                        "type": "string"
                    },
                    "refresh_token": {
                        "type": "string"
                    }
                }
            },
            "WFSGeoDataCreation": {
                "type": "object",
                "properties": {
                    "extent_filter": {
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "url": {
                        "type": "string"
                    },
                    "version": {
                        "type": "string",
                        "nullable": true
                    },
                    "feature_type": {
                        "type": "string"
                    }
                },
                "required": [
                    "feature_type",
                    "url"
                ]
            },
            "WMSGeoDataCreation": {
                "type": "object",
                "properties": {
                    "attributes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataAttribute"
                        }
                    },
                    "extent": {
                        "readOnly": true,
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "extent_filter": {
                        "minItems": 4,
                        "maxItems": 4,
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    },
                    "url": {
                        "type": "string"
                    },
                    "version": {
                        "type": "string",
                        "nullable": true
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        }
                    },
                    "start": {
                        "type": "number",
                        "nullable": true
                    },
                    "stop": {
                        "type": "number",
                        "nullable": true
                    },
                    "step": {
                        "type": "number",
                        "nullable": true
                    },
                    "layer": {
                        "type": "string"
                    },
                    "resolution": {
                        "type": "number",
                        "nullable": true
                    }
                },
                "required": [
                    "layer",
                    "url"
                ]
            },
            "WMSGeoDataPostRequest": {
                "type": "object",
                "properties": {
                    "url": {
                        "type": "string"
                    },
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        }
                    }
                },
                "required": [
                    "url"
                ]
            },
            "WMSStreamClasses": {
                "type": "object",
                "properties": {
                    "classes": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "number"
                            }
                        }
                    },
                    "step": {
                        "type": "number"
                    },
                    "start": {
                        "type": "number"
                    },
                    "stop": {
                        "type": "number"
                    },
                    "resolution": {
                        "type": "number"
                    }
                }
            },
            "WeightedSumCreation1": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "weighted_sum"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "attributes_list": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PrefDefaultValuesAttribute"
                        }
                    },
                    "default_values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DefaultValue"
                        }
                    },
                    "operands": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WeightedSumOperand"
                        }
                    }
                },
                "required": [
                    "model_type"
                ]
            },
            "WeightedSumOperand1": {
                "type": "object",
                "properties": {
                    "attribute": {
                        "type": "integer"
                    },
                    "weight": {
                        "type": "number",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer"
                    }
                }
            },
            "ZonePropositionGeneratorCreation1": {
                "type": "object",
                "properties": {
                    "model_type": {
                        "readOnly": true,
                        "type": "string",
                        "enum": [
                            "zone_proposition"
                        ]
                    },
                    "data_generator": {
                        "readOnly": true,
                        "type": "integer"
                    },
                    "used_attributes": {
                        "readOnly": true,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BaseDataAttribute1"
                        }
                    },
                    "name": {
                        "type": "string",
                        "nullable": true
                    },
                    "cut_to_extent": {
                        "type": "boolean",
                        "nullable": true
                    },
                    "id": {
                        "type": "integer",
                        "readOnly": true
                    },
                    "geo_size": {
                        "type": "number",
                        "default": 0.0
                    },
                    "size": {
                        "type": "integer",
                        "default": 80,
                        "minimum": 1,
                        "maximum": 1000
                    },
                    "mutation": {
                        "type": "number",
                        "default": 0.02,
                        "minimum": 0.0,
                        "maximum": 1.0
                    },
                    "children": {
                        "type": "integer",
                        "default": 60,
                        "minimum": 0
                    },
                    "filter_clusters": {
                        "type": "boolean",
                        "default": true
                    },
                    "iterations": {
                        "type": "integer",
                        "nullable": true
                    },
                    "duration": {
                        "type": "number",
                        "nullable": true
                    }
                },
                "required": [
                    "model_type"
                ]
            }
        },
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "scheme": "bearer",
                "bearerFormat": "JWT"
            },
            "basicAuth": {
                "type": "http",
                "scheme": "basic",
                "description": "Provide access token"
            },
            "refreshAuth": {
                "type": "http",
                "scheme": "bearer",
                "bearerFormat": "JWT",
                "description": "Provide refresh token"
            }
        }
    },
    "openapi": "3.0.2",
    "servers": [
        {
            "url": "/api",
            "description": "Backend server"
        }
    ]
}