API Documentation

user

GET /user/assets

Get asset information. Only one of the ID parameter is supported at once

Query Parameters:
  • id_asset (integer) – Specific ID of asset to query information.

  • asset_uuid (string) – Specific UUID of asset to query information.

  • id_device (integer) – ID of the device from which to request all accessible assets

  • id_session (integer) – ID of session from which to request all assets

  • id_participant (integer) – ID of participant from which to request all accessible assets

  • id_user (integer) – ID of the user from which to request all accessible assets.

  • service_uuid (string) – Query all assets associated with that service uuid

  • id_creator_service (integer) – ID of the service from which to request all created assets.

  • id_creator_user (integer) – ID of the user from which to request all created assets.

  • id_creator_participant (integer) – ID of the participant from which to request all created assets.

  • id_creator_device (integer) – ID of the device from which to request all created assets.

  • with_urls (boolean) – Also include assets infos and download-upload url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • full (boolean) – Also include names of sessions, users, services, … in the reply

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of assets

  • 400 Bad Request – Required parameter is missing

  • 403 Forbidden – Logged user doesn’t have permission to access the requested data

POST /user/assets

Delete asset.

Query Parameters:
  • token (string) – Secret token

Status Codes:
DELETE /user/assets

Delete asset.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /user/assets/archive

Get asset archive. Only one of the ID parameter is supported at once.

Query Parameters:
  • id_participant (integer) – ID of the participant from which to request all associated assets

  • id_project (integer) – ID of the project from which to request all associated assets

  • id_session (integer) – ID of the session from which to request all associated assets

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of assets

  • 400 Bad Request – Required parameter is missing

  • 403 Forbidden – Logged user doesn’t have permission to access the requested data

GET /user/devices

Get devices information. Only one of the ID parameter is supported at once. If no ID is specified, returns all accessible devices for the logged user.

Query Parameters:
  • id (integer) – ID of the device to query

  • id_device (integer) – ID of the device to query

  • device_uuid (string) – Device uuid of the device to query

  • uuid (string) – Alias for “device_uuid”

  • id_site (integer) – ID of the site from which to get all associated devices

  • id_project (integer) – ID of the project from which to get all associated devices

  • id_device_type (integer) – ID of device type from which to get all devices. Can be combined with id_site or id_project.

  • id_device_subtype (integer) – Device subtype id to get all devices of that subtype.

  • name (string) – Name of the device to query

  • projects (boolean) – Flag that indicates if associated project(s) information should be included in the returned device list

  • enabled (boolean) – Flag that limits the returned data to the enabled devices.

  • list (boolean) – Flag that limits the returned data to minimal information

  • with_participants (boolean) – Flag that indicates if associated participant(s) information should be included in the returned device list

  • with_sites (boolean) – Flag that indicates if associated site(s) information should be included in the returned device list

  • with_status (boolean) – Include status information - offline, online, busy for each device

  • token (string) – Secret token

Status Codes:
POST /user/devices

Create / update devices. id_device must be set to “0” to create a new device. Only superadmins can create new devices, site admin can update and project admin can modify config and notes.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device.device_certificate (string)

  • device.device_config (string)

  • device.device_enabled (boolean)

  • device.device_infos (string)

  • device.device_lastonline (string)

  • device.device_name (string)

  • device.device_notes (string)

  • device.device_onlineable (boolean)

  • device.device_token (string)

  • device.device_uuid (string)

  • device.id_device (integer)

  • device.id_device_subtype (integer)

  • device.id_device_type (integer)

Status Codes:
DELETE /user/devices

Delete a specific device

Query Parameters:
  • id (integer) – Device ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/devices/online

Get online devices uuids.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /user/devices/participants

Get devices that are related to a participant. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_device (integer) – ID of the device from which to request all associated participants

  • id_participant (integer) – ID of the participant from which to request all associated devices

  • id_site (integer) – ID of the site from which to get all devices and associated participants

  • id_device_type (integer) – ID of device type from which to get all devices and associated participants

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of devices - participants association

  • 400 Bad Request – Required parameter is missing (must have at least one id)

  • 500 Internal Server Error – Error occurred when loading devices for participant

POST /user/devices/participants

Create/update devices associated with a participant.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device_participant.id_device (integer)

  • device_participant.id_device_participant (integer)

  • device_participant.id_participant (integer)

Status Codes:
DELETE /user/devices/participants

Delete a specific device-participant association.

Query Parameters:
  • id (integer) – Specific device-participant association ID to delete. Be careful: this is not the device or the participant ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/devices/projects

Get devices that are associated with a project. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_device (integer) – ID of the device from which to request all associated projects

  • id_project (integer) – ID of the project from which to get all associated devices

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_projects (boolean) – Used with id_device. Also return projects that don’t have any association with that device

  • with_devices (boolean) – Used with id_project. Also return devices that don’t have any association with that project

  • with_sites (boolean) – Used with id_device. Also return site information of the returned projects.

  • token (string) – Secret token

Status Codes:
POST /user/devices/projects

Create/update devices associated with a project.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device_project.id_device (integer)

  • device_project.id_device_project (integer)

  • device_project.id_project (integer)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_project or id_device) in the JSON body

  • 403 Forbidden – Logged user can’t modify device association - the user isn’t admin of the project or current user can’t access the device.

  • 500 Internal Server Error – Internal error occured when saving device association

DELETE /user/devices/projects

Delete a specific device-project association.

Query Parameters:
  • id (integer) – Specific device-project association ID to delete. Be careful: this is not the device or the project ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 403 Forbidden – Logged user can’t delete device association (no admin access to project or one of the device’s site)

  • 500 Internal Server Error – Device-project association not found or database error.

GET /user/devices/sites

Get devices that are related to a site. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_device (integer) – ID of the device from which to request all associated sites

  • id_site (integer) – ID of the site from which to get all associated devices

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_devices (boolean) – Used with id_project. Also return devices that don’t have any association with that project

  • with_sites (boolean) – Used with id_service. Also return site information of the returned projects.

  • token (string) – Secret token

Status Codes:
POST /user/devices/sites

Create/update devices associated with a site.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device_site.id_device (integer)

  • device_site.id_device_site (integer)

  • device_site.id_site (integer)

Status Codes:
DELETE /user/devices/sites

Delete a specific device-site association.

Query Parameters:
  • id (integer) – Specific device-site association ID to delete. Be careful: this is not the device or the site ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/devicesubtypes

Get devices subtypes. Only one of the ID parameter is supported at once.

Query Parameters:
  • id_device_subtype (integer) – ID of the device subtype to query

  • id_device_type (integer) – ID of the device type from which to get all subtypes

  • list (boolean) – Return minimal information

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of devices subtypes

  • 400 Bad Request – No parameters specified at least one id must be used

  • 403 Forbidden – Forbidden access to the device type specified. Please check that the user has access to a session type containing that device type.

  • 500 Internal Server Error – Database error

POST /user/devicesubtypes

Create / update devices subtypes. id_device_subtype must be set to “0” to create a new subtype. Only site admins can create new devices subtypes.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device_subtype.device_subtype_name (string)

  • device_subtype.id_device_subtype (integer)

  • device_subtype.id_device_type (integer)

Status Codes:
DELETE /user/devicesubtypes

Delete a specific device subtype

Query Parameters:
  • id (integer) – Device subtype ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/devicetypes

Get devices types. Only one of the ID parameter is supported at once. The ID is dominant on the device_type_key

Query Parameters:
  • id_device_type (integer) – ID of the device type

  • device_type_key (string) – Key of the device type

  • list (boolean) – List of all device types

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of devices types

  • 400 Bad Request – No parameters specified at least one id must be used

  • 403 Forbidden – Forbidden access to the device type specified. Please check that the user has access to a session type containing that device type.

  • 500 Internal Server Error – Database error

POST /user/devicetypes

Create / update devices types. id_device_type must be set to “0” to create a new type. Only site admins can create new devices types.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device_type.device_type_key (string)

  • device_type.device_type_name (string)

  • device_type.id_device_type (integer)

Status Codes:
DELETE /user/devicetypes

Delete a specific device type

Query Parameters:
  • id (integer) – Device type ID to delete

  • device_type_key (string) – Unique device key to delete

  • token (string) – Secret token

Status Codes:
GET /user/disconnect

Disconnect user/participant/device from server. Use Logout for current user instead.

Query Parameters:
  • id_user (integer) – ID of the user to query

  • user_uuid (string) – User uuid of the device to query

  • id_participant (integer) – ID of the participant to query

  • participant_uuid (string) – Participant uuid of the device to query

  • id_device (integer) – ID of the device to query

  • device_uuid (string) – Device uuid of the device to query

  • token (string) – Secret token

Status Codes:
GET /user/forms

Get json description of standard input form for the specified data type.

Query Parameters:
  • type (string) – Data type of the required form. Currently, the following data types are supported: device device_type device_subtype group participant project service service_config session session_type session_type_config site test_type user user_group versions

  • id (integer) – Specific id of subitem to query. Used to provide context to the returned form.

  • id_project (integer) – Specific id_project used to limit arrays list in some forms

  • id_site (integer) – Specific id_site used to limit arrays list in some forms

  • key (string) – Specific key of subitem to query. Used with service_config.

  • token (string) – Secret token

Status Codes:
GET /user/groups

Get participant groups information. Only one of the ID parameter is supported at once. If no ID is specified, returns all accessible groups for the logged user

Query Parameters:
  • id_group (integer) – ID of the participant group to query

  • id_project (integer) – ID of the project from which to get all participant groups

  • id (integer) – Alias for “id_group”

  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
POST /user/groups

Create / update participant groups. id_participant_group must be set to “0” to create a new group. A group can be created/modified if the user has admin rights to the project.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • participant_group.id_participant_group (integer)

  • participant_group.id_project (integer)

  • participant_group.participant_group_name (string)

Status Codes:
DELETE /user/groups

Delete a specific participant group

Query Parameters:
  • id (integer) – Participant Group ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/login

Login to the server using HTTP Basic Authentification (HTTPAuth)

Query Parameters:
  • with_websocket (boolean) – If set, requires that a websocket url is returned.If not possible to do so, return a 403 error.

Status Codes:
GET /user/logout

Logout from the server

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /user/participants

Get participants information. Only one of the ID parameter is supported and required at once

Query Parameters:
  • id_participant (integer) – ID of the participant to query

  • id (integer) – Alias for “id_participant”

  • username (string) – Username of the participant to query

  • participant_uuid (string) – Participant uuid of the participant to query

  • uuid (string) – Alias for “participant_uuid”

  • id_site (integer) – ID of the site from which to get all participants

  • id_project (integer) – ID of the project from which to get all participants

  • id_group (integer) – ID of the participant groups from which to get all participants

  • id_session (integer) – ID of the session from which to get all participants

  • id_device (integer) – ID of the device from which to get all participants associated

  • name (string) – Name of the participant to query

  • enabled (boolean) – Flag that limits the returned data to the enabled participants

  • list (boolean) – Flag that limits the returned data to minimal information

  • full (boolean) – Flag that expands the returned data to include all information

  • orderby_recents (boolean) – Returns participants ordered by most recently updated

  • limit (integer) – Returns at most “limit” participants

  • no_group (boolean) – Flag that limits the returned data with only participants without a group

  • token (string) – Secret token

Status Codes:
POST /user/participants

Create / update participants. id_participant must be set to “0” to create a new participant. A participant can be created/modified if the user has admin rights to the project.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • participant.id_participant (integer)

  • participant.id_participant_group (integer)

  • participant.id_project (integer)

  • participant.participant_email (string)

  • participant.participant_enabled (boolean)

  • participant.participant_lastonline (string)

  • participant.participant_login_enabled (boolean)

  • participant.participant_name (string)

  • participant.participant_password (string)

  • participant.participant_token (string)

  • participant.participant_token_enabled (boolean)

  • participant.participant_username (string)

  • participant.participant_uuid (string)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_participant or id_project/id_group [only one of them]) in the JSON body, or mismatch between id_project and participant group project

  • 403 Forbidden – Logged user can’t create/update the specified participant

  • 500 Internal Server Error – Internal error when saving participant

DELETE /user/participants

Delete a specific participant

Query Parameters:
  • id (integer) – Participant ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/participants/online

Get online participants uuids.

Query Parameters:
  • with_sites (boolean) – Include site informations for each participant.

  • with_projects (boolean) – Include project informations for each participant.

  • token (string) – Secret token

Status Codes:
GET /user/projectaccess

Get user roles for projects. Only one ID parameter required and supported at once.

Query Parameters:
  • id_user (integer) – ID of the user from which to request all projects roles

  • id_user_group (integer) – ID of the user group from which to request all projects roles

  • id_project (integer) – ID of the project from which to request all users groups roles

  • admins (boolean) – Flag to limit to projects from which the user is an admin or users in project that have the admin role

  • with_sites (boolean) – Include sites information for each project.

  • by_users (boolean) – If specified, returns roles by users instead of by usergroups

  • with_empty (boolean) – Used with id_user_group. Also return projects that don’t have any access with that user group. Used with id_project. also return user groups that don’t have any access to the project

  • token (string) – Secret token

Status Codes:
POST /user/projectaccess

Create/update project access for an user.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • project_access (any)

Status Codes:
DELETE /user/projectaccess

Delete a specific project access

Query Parameters:
  • id (integer) – Project Access ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/projects

Get projects information. Only one of the ID parameter is supported and required at once

Query Parameters:
  • id_project (integer) – ID of the project to query

  • id (integer) – Alias for “id_project”

  • id_site (integer) – ID of the site from which to get all projects

  • id_service (integer) – ID of the service from which to get all projects

  • user_uuid (string) – User UUID from which to get all projects that are accessible

  • name (string) – Project to query by name

  • enabled (boolean) – Flag that limits the returned data to the enabled projects

  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
POST /user/projects

Create / update projects. id_project must be set to “0” to create a new project. A project can be created/modified if the user has admin rights to the related site.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • project.id_project (integer)

  • project.id_site (integer)

  • project.project_description (string)

  • project.project_enabled (boolean)

  • project.project_name (string)

Status Codes:
DELETE /user/projects

Delete a specific project

Query Parameters:
  • id (integer) – Project ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/refresh_token

Refresh token, old token needs to be passed in request headers.

Query Parameters:
  • with_websocket (boolean) – If set, requires that a websocket url is returned.If not possible to do so, return a 403 error.

  • token (string) – Secret token

Status Codes:
GET /user/server/settings

Get server setting key

Query Parameters:
  • uuid (boolean) – Get server UUID

  • device_register_key (boolean) – Get device registration key

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns setting value

  • 401 Unauthorized – Logged user doesn’t have permission to access the requested data

GET /user/services

Get services information. Only one of the ID parameter is supported and required at once.

Query Parameters:
  • id_service (integer) – ID of the service to query

  • id_project (integer) – ID of the project to query services from

  • id_site (integer) – ID of the site to query services from

  • id (integer) – Alias for “id_service”

  • service_uuid (string) – Service UUID to query

  • uuid (string) – Alias for “service_uuid”

  • service_key (string) – Service Key to query

  • key (string) – Alias for “service_key”

  • list (boolean) – Flag that limits the returned data to minimal information

  • with_config (boolean) – Only return services with editable configuration

  • token (string) – Secret token

Status Codes:
POST /user/services

Create / update services. id_service must be set to “0” to create a new service. A service can be created/modified only by super-admins. If data contains “roles”, also update the roles with the list.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service.id_service (integer)

  • service.service_clientendpoint (string)

  • service.service_default_config (string)

  • service.service_editable_config (boolean)

  • service.service_enabled (boolean)

  • service.service_endpoint (string)

  • service.service_endpoint_device (string)

  • service.service_endpoint_participant (string)

  • service.service_endpoint_user (string)

  • service.service_hostname (string)

  • service.service_key (string)

  • service.service_name (string)

  • service.service_port (integer)

  • service.service_system (boolean)

  • service.service_uuid (string)

Status Codes:
DELETE /user/services

Delete a specific service

Query Parameters:
  • id (integer) – Service ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/services/access

Get access roles for a specific items. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_user_group (integer) – Usergroup ID to query service access

  • id_user (integer) – User ID to query service access

  • id_participant_group (integer) – Participant group ID to query service access

  • id_device (integer) – Device ID to query service access

  • id_service (integer) – Service ID to query associated access from

  • token (string) – Secret token

Status Codes:
POST /user/services/access

Create/update service - access association. A list can be posted - if an item with a id_service_access doesn’t have an id_service_role element, it will be deleted.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_access.id_device (integer)

  • service_access.id_participant_group (integer)

  • service_access.id_service_access (integer)

  • service_access.id_service_role (integer)

  • service_access.id_user_group (integer)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_project or id_service) in the JSON body

  • 403 Forbidden – Logged user can’t modify association (only site admin can modify association)

  • 500 Internal Server Error – Internal error occurred when saving association

DELETE /user/services/access

Delete a specific service access.

Query Parameters:
  • id (integer) – Specific service access ID to delete. Be careful: this is not the service or service role ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/services/configs

Get service configuration. id_service can be combined with id_user, id_participant or id_device, if required. If no id_user, id_participant and id_device specified, will return config the current user.

Query Parameters:
  • id_service (integer) – ID of service to get all configs from. Use in combination with another ID field to filter.

  • service_key (string) – Service key to query. Can be used instead of id_service. If usedwith id_service, service_key will be ignored.

  • id_participant (integer) – ID of the participant from which to get the service specified with id_service or all configs

  • id_user (integer) – ID of the user from which to get the service specified with id_service or all configs

  • id_device (integer) – ID of the device from which to get the service specified with id_service or all configs

  • id_specific (string) – ID of the specific configuration to get.

  • with_empty (boolean) – Also include empty configs for services without config.

  • list (boolean) – Also includes a list of all available specifics configs.

  • token (string) – Secret token

Status Codes:
POST /user/services/configs

Create / update service config. id_service_config must be set to “0” to create a new config. A config can be created/modified if the user has admin access to the user, device or participant

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_config.id_device (integer)

  • service_config.id_participant (integer)

  • service_config.id_service (integer)

  • service_config.id_service_config (integer)

  • service_config.id_user (integer)

  • service_config.service_config_config (string)

Status Codes:
DELETE /user/services/configs

Delete a specific session

Query Parameters:
  • id (integer) – Service config ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/services/projects

Get services that are associated with a project. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_project (integer) – Project ID to query associated services

  • id_service (integer) – Service ID to query associated projects from

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_projects (boolean) – Used with id_service. Also return projects that don’t have any association with that service

  • with_services (boolean) – Used with id_project. Also return services that don’t have any association with that project

  • with_roles (boolean) – Used with id_project. Returns detailled information oneach role for this service.

  • with_sites (boolean) – Used with id_service. Also return site information of the returned projects.

  • token (string) – Secret token

Status Codes:
POST /user/services/projects

Create/update service - project association. If a “service” json is received, the list of “projects” is replaced. If a “project” json is received, the list of “services” is replaced.If a “service_project” is received, each of the item in the list is added.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • project.id_project (integer)

  • project.id_site (integer)

  • project.project_description (string)

  • project.project_enabled (boolean)

  • project.project_name (string)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_project or id_service) in the JSON body

  • 403 Forbidden – Logged user can’t modify association (only site admin can modify association)

  • 500 Internal Server Error – Internal error occurred when saving association

DELETE /user/services/projects

Delete a specific service - project association.

Query Parameters:
  • id (integer) – Specific service - project association ID to delete. Be careful: this is not the service or project ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/services/roles

Get service roles for either a specific service or for all available services.

Query Parameters:
  • id_service (integer) – Specific service ID to query roles for

  • globals (boolean) – Only return global roles, e.g. not related to a site or a project

  • list (boolean) – Return minimal information about the roles

  • token (string) – Secret token

Status Codes:
POST /user/services/roles

Create/update service role.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_role.id_project (integer)

  • service_role.id_service (integer)

  • service_role.id_service_role (integer)

  • service_role.id_site (integer)

  • service_role.service_role_name (string)

Status Codes:
DELETE /user/services/roles

Delete a specific service role.

Query Parameters:
  • id (integer) – Specific service role ID to delete.

  • token (string) – Secret token

Status Codes:
GET /user/services/sites

Get services that are associated with a site. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_site (integer) – Site ID to query associated services

  • id_service (integer) – Service ID to query associated projects from

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_sites (boolean) – Used with id_service. Also return sites that don’t have any association with that service

  • with_services (boolean) – Used with id_site. Also return services that don’t have any association with that site

  • with_roles (boolean) – Used with id_site. Returns detailed information oneach role for this service.

  • token (string) – Secret token

Status Codes:
POST /user/services/sites

Create/update service - site association. If a “service” json is received, the list of “sites” is replaced. If a “site” json is received, the list of “services” is replaced.If a “service_site” is received, each of the item in the list is added.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_site.id_service (integer)

  • service_site.id_service_site (integer)

  • service_site.id_site (integer)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_project or id_service) in the JSON body

  • 403 Forbidden – Logged user can’t modify association (only super admin can modify association)

  • 500 Internal Server Error – Internal error occurred when saving association

DELETE /user/services/sites

Delete a specific service - site association.

Query Parameters:
  • id (integer) – Specific service - site association ID to delete. Be careful: this is not the service or site ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/sessions

Get sessions information. Only one of the ID parameter is supported and required at once

Query Parameters:
  • id_session (integer) – ID of the session to query

  • id_participant (integer) – ID of the participant from which to get all sessions

  • id_user (integer) – ID of the user from which to get all sessions

  • id_device (integer) – ID of the device from which to get all sessions

  • status (integer) – Limit to specific session status

  • limit (integer) – Maximum number of results to return

  • offset (integer) – Number of items to ignore in results, offset from 0-index

  • session_uuid (string) – Session UUID to query

  • list (boolean) – Flag that limits the returned data to minimal information

  • start_date (string) – Start date, sessions before that date will be ignored

  • end_date (string) – End date, sessions after that date will be ignored

  • with_session_type (boolean) – Include session type informations

  • token (string) – Secret token

Status Codes:
POST /user/sessions

Create / update session. id_session must be set to “0” to create a new session. A session can be created/modified if the user has access to all participants and users in the session.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session.id_creator_device (integer)

  • session.id_creator_participant (integer)

  • session.id_creator_service (integer)

  • session.id_creator_user (integer)

  • session.id_session (integer)

  • session.id_session_type (integer)

  • session.session_comments (string)

  • session.session_duration (integer)

  • session.session_name (string)

  • session.session_parameters (string)

  • session.session_start_datetime (string)

  • session.session_status (integer)

  • session.session_uuid (string)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(session, id_session, session_participants_ids and/or session_users_ids[for new sessions]) in the JSON body

  • 403 Forbidden – Logged user can’t create/update the specified session

  • 500 Internal Server Error – Internal error when saving session

DELETE /user/sessions

Delete a specific session

Query Parameters:
  • id (integer) – Session ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/sessions/events

Get events for a specific session

Query Parameters:
  • id_session (integer) – ID of the session to query events for

  • token (string) – Secret token

Status Codes:
POST /user/sessions/events

Create / update session events. id_session_event must be set to “0” to create a new event. An event can be created/modified if the user has access to the session.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_event.id_session (integer)

  • session_event.id_session_event (integer)

  • session_event.id_session_event_type (integer)

  • session_event.session_event_context (string)

  • session_event.session_event_datetime (string)

  • session_event.session_event_text (string)

Status Codes:
DELETE /user/sessions/events

Delete a specific session event

Query Parameters:
  • id (integer) – Session event ID to delete

  • token (string) – Secret token

Status Codes:
POST /user/sessions/manager

Manage a specific session

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_manage.action (string) – (required)

  • session_manage.id_creator_device (integer)

  • session_manage.id_creator_participant (integer)

  • session_manage.id_creator_service (integer)

  • session_manage.id_creator_user (integer)

  • session_manage.id_service (integer)

  • session_manage.id_session (integer)

  • session_manage.id_session_type (integer)

  • session_manage.parameters (object)

  • session_manage.session_devices[] (string)

  • session_manage.session_participants[] (string)

  • session_manage.session_users[] (string)

  • session_manage.session_uuid (str)

Status Codes:
GET /user/sessiontypes

Get session type information. If no id_session_type specified, returns all available session types

Query Parameters:
  • id_session_type (integer) – ID of the session type to query

  • id_project (integer) – ID of the project to get session type for

  • id_site (integer) – ID of the site to get session types for

  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
POST /user/sessiontypes

Create / update session type. id_session_type must be set to “0” to create a new type. A session type can be created/modified if the user has access to a related session typeproject.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_type.id_service (integer)

  • session_type.id_session_type (integer)

  • session_type.session_type_category (integer)

  • session_type.session_type_color (string)

  • session_type.session_type_config (string)

  • session_type.session_type_name (string)

  • session_type.session_type_online (boolean)

Status Codes:
DELETE /user/sessiontypes

Delete a specific session type

Query Parameters:
  • id (integer) – Session type ID to delete

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 403 Forbidden – Logged user can’t delete session type (no admin access to project related to that type or sessions of that type exists in the system somewhere)

  • 500 Internal Server Error – Database error.

GET /user/sessiontypes/projects

Get devices types that are associated with a project. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_project (integer) – Project ID to query associated session types from

  • id_session_type (integer) – Session type ID to query associated projects from

  • with_projects (boolean) – Used with id_session_type. Also return projects that don’t have any association with that type

  • with_session_type (boolean) – Used with id_project. Also return types that don’t have any association with that project

  • with_sites (boolean) – Used with id_session_type. Also return site information of the returned projects.

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • token (string) – Secret token

Status Codes:
POST /user/sessiontypes/projects

Create/update session-type - project association.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_type_project.id_project (integer)

  • session_type_project.id_session_type (integer)

  • session_type_project.id_session_type_project (integer)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(id_project or id_session_type) in the JSON body

  • 403 Forbidden – Logged user can’t modify association (session type must be accessible from project access)

  • 500 Internal Server Error – Internal error occurred when saving association

DELETE /user/sessiontypes/projects

Delete a specific session-type - project association.

Query Parameters:
  • id (integer) – Specific device-type - project association ID to delete. Be careful: this is not the session-type or project ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Association not found (invalid id?)

  • 403 Forbidden – Logged user can’t delete association (no access to session-type or project)

GET /user/sessiontypes/sites

Get session types that are related to a site. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_session_type (integer) – ID of the session type from which to request all associated sites

  • id_site (integer) – ID of the site from which to get all associated session types

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_session_type (boolean) – Used with id_session_type. Also return session types that don’t have any association with that site

  • with_sites (boolean) – Used with id_service. Also return site information of the returned projects.

  • token (string) – Secret token

Status Codes:
POST /user/sessiontypes/sites

Create/update session types associated with a site.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_type_site.id_session_type (integer)

  • session_type_site.id_session_type_site (integer)

  • session_type_site.id_site (integer)

Status Codes:
DELETE /user/sessiontypes/sites

Delete a specific session type-site association.

Query Parameters:
  • id (integer) – Specific session type-site association ID to delete. Be careful: this is not the session type or the site ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/siteaccess

Get user roles for sites. Only one parameter required and supported at once.

Query Parameters:
  • id_user (integer) – ID of the user from which to request all site roles

  • id_user_group (integer) – ID of the user group from which to request all site roles

  • id_site (integer) – ID of the site from which to request all user groups roles

  • admins (boolean) – Flag to limit to sites from which the user group is an admin or users in site that have the admin role

  • by_users (boolean) – If specified, returns roles by users instead of by usergroups

  • with_usergroups (boolean) – Used With the “by_users” parameter, it instead returns the usergroups of each user.

  • with_empty (boolean) – Used with id_site, also return user or user groups that don’t have any access to the site. Used with id_user_group, also return sites that don’t have any access with that user group

  • token (string) – Secret token

Status Codes:
POST /user/siteaccess

Create/update site access for a user group.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • site_access (any)

Status Codes:
DELETE /user/siteaccess

Delete a specific site access

Query Parameters:
  • id (integer) – Site Access ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/sites

Get site information. Only one of the ID parameter is supported and required at once

Query Parameters:
  • id_site (integer) – ID of the site to query

  • id (integer) – Alias for “id_site”

  • id_device (integer) – ID of the device from which to get all related sites

  • user_uuid (string) – User UUID from which to get all sites that are accessible

  • name (string) – Site name to query

  • token (string) – Secret token

Status Codes:
POST /user/sites

Create / update site. id_site must be set to “0” to create a new site. A site can be created/modified if the user has admin rights to the site itself or issuperadmin.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • site.id_site (integer)

  • site.site_name (string)

Status Codes:
DELETE /user/sites

Delete a specific site

Query Parameters:
  • id (integer) – Site ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/stats

Get stats for the specified item.

Query Parameters:
  • id_user_group (integer) – ID of the user group to query stats for.

  • id_user (integer) – ID of the user to query stats for.

  • id_site (integer) – ID of the site to query stats for.

  • id_project (integer) – ID of the project to query stats for.

  • id_group (integer) – ID of the participant group to query stats for.

  • id_session (integer) – ID of the session to query stats for.

  • id_participant (integer) – ID of the participant to query stats for.

  • id_device (integer) – ID of the device to query stats for.

  • with_participants (boolean) – Also includes related participants stats. Can not be used with “id_participant”, “id_user_group”, “id_session”, “id_user” or “id_device”.

  • with_warnings (boolean) – Also include warning information such as a participant not having sessions for some time or users not having logged on for some time. Can only be used with “id_site” for now.

  • token (string) – Secret token

Status Codes:
GET /user/tests

Get test information. Only one of the ID parameter is supported at once

Query Parameters:
  • id_test (integer) – Specific ID of test to query information.

  • test_uuid (string) – Specific UUID of test to query information.

  • id_device (integer) – ID of the device from which to request all tests

  • id_session (integer) – ID of session from which to request all tests

  • id_participant (integer) – ID of participant from which to request all tests

  • id_user (integer) – ID of the user from which to request all tests.

  • with_urls (boolean) – Also include tests results url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • full (boolean) – Also include names of sessions, users, services, … in the reply

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns list of assets

  • 400 Bad Request – Required parameter is missing

  • 403 Forbidden – Logged user doesn’t have permission to access the requested data

POST /user/tests

Delete test.

Query Parameters:
  • token (string) – Secret token

Status Codes:
DELETE /user/tests

Delete a specific test

Query Parameters:
  • id (integer) – Test type ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/testtypes

Get test type information. If no id_test_type specified, returns all available test types

Query Parameters:
  • id_test_type (integer) – ID of the test type to query

  • test_type_key (string) – Key of the test type to query

  • id_project (integer) – ID of the project to get test types for

  • id_site (integer) – ID of the site to get test types for

  • list (boolean) – Flag that limits the returned data to minimal information

  • with_urls (boolean) – Also include test types urls

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • token (string) – Secret token

Status Codes:
POST /user/testtypes

Create / update test type. id_test_type must be set to “0” to create a new type. A test type can be created/modified if the user has access to a related test typeproject.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • test_type.id_service (integer)

  • test_type.id_test_type (integer)

  • test_type.test_type_description (string)

  • test_type.test_type_has_json_format (boolean)

  • test_type.test_type_has_web_editor (boolean)

  • test_type.test_type_has_web_format (boolean)

  • test_type.test_type_key (string)

  • test_type.test_type_name (string)

  • test_type.test_type_uuid (string)

Status Codes:
DELETE /user/testtypes

Delete a specific test type

Query Parameters:
  • id (integer) – Test type ID to delete

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 403 Forbidden – Logged user can’t delete test type (no admin access to project related to that type or tests of that type exists in the system somewhere)

  • 500 Internal Server Error – Database error.

GET /user/testtypes/projects

Get test types that are associated with a project. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_project (integer) – Project ID to query associated test types from

  • id_test_type (integer) – Test type ID to query associated projects from

  • with_projects (boolean) – Used with id_test_type. Also return projects that don’t have any association with that type

  • with_test_types (boolean) – Used with id_project. Also return types that don’t have any association with that project

  • with_sites (boolean) – Used with id_test_type. Also return site information of the returned projects.

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • token (string) – Secret token

Status Codes:
POST /user/testtypes/projects

Create/update test-type - project association.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • test_type_project.id_project (integer)

  • test_type_project.id_test_type (integer)

  • test_type_project.id_test_type_project (integer)

Status Codes:
DELETE /user/testtypes/projects

Delete a specific test-type - project association.

Query Parameters:
  • id (integer) – Specific test type - project association ID to delete. Be careful: this is not the test-type or project ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/testtypes/sites

Get session types that are related to a site. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_test_type (integer) – ID of the test type from which to request all associated sites

  • id_site (integer) – ID of the site from which to get all associated test types

  • list (boolean) – Flag that limits the returned data to minimal information (ids only)

  • with_test_types (boolean) – Used with id_test_type. Also return test types that don’t have any association with that site

  • with_sites (boolean) – Used with id_site. Also return site information of the returned test types.

  • token (string) – Secret token

Status Codes:
POST /user/testtypes/sites

Create/update test types associated with a site.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • test_type_site.id_site (integer)

  • test_type_site.id_test_type (integer)

  • test_type_site.id_test_type_site (integer)

Status Codes:
DELETE /user/testtypes/sites

Delete a specific test type-site association.

Query Parameters:
  • id (integer) – Specific test type-site association ID to delete. Be careful: this is not the test type or the site ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /user/usergroups

Get user group information. If no id specified, returns all accessible users groups

Query Parameters:
  • id_user_group (integer) – ID of the user group to query

  • id_user (integer) – ID of the user to get all user groups

  • id_site (integer) – ID of the site to get all user groups with access in that site

  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
POST /user/usergroups

Create / update user group. id_user_group must be set to “0” to create a new user group. User groups can be modified if the user has a site admin role.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • user_group.id_user_group (integer)

  • user_group.user_group_name (string)

Status Codes:
DELETE /user/usergroups

Delete a specific user group

Query Parameters:
  • id (integer) – User group ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/users

Get user information. If no id specified, returns all accessible users

Query Parameters:
  • id (integer) – ID of the user to query

  • id_user (integer) – ID of the user to query

  • id_user_group (integer) – ID of the user group to get all users from

  • id_project (integer) – ID of the project to get all users that has access to it

  • user_uuid (string) – User UUID to query

  • uuid (string) – Alias for “user_uuid”

  • username (string) – Username of the user to query

  • self (boolean) – Query information about the currently logged user

  • enabled (boolean) – Only returns users with the specified enabled status

  • list (boolean) – Flag that limits the returned data to minimal information (ID, name, enabled)

  • with_usergroups (boolean) – Include usergroups information for each user.

  • with_status (boolean) – Include status information - offline, online, busy for each user

  • token (string) – Secret token

Status Codes:
POST /user/users

Create / update user. id_user must be set to “0” to create a new user. User can be modified if: current user is super admin or user is part of a project which the current user is admin. Promoting a user to super admin is restricted to super admins.”If data contains “user_user_groups, also set user groups for that user.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • user.id_user (integer)

  • user.user_email (string)

  • user.user_enabled (boolean)

  • user.user_firstname (string)

  • user.user_lastname (string)

  • user.user_lastonline (string)

  • user.user_notes (string)

  • user.user_password (string)

  • user.user_profile (string)

  • user.user_superadmin (boolean)

  • user.user_username (string)

  • user.user_uuid (string)

Status Codes:
DELETE /user/users

Delete a specific user

Query Parameters:
  • id (integer) – User ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/users/online

Get online users informations.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /user/users/preferences

Get user preferences. If no id_user field specified, returns preferences for current user.

Query Parameters:
  • id_user (integer) – ID of the user to get preference for

  • app_tag (string) – Tag of the application for which to get preferences

  • token (string) – Secret token

Status Codes:
POST /user/users/preferences

Create / update user preferences. Only one preference is allowed for a specific app_tag. Preference will be overwritten if app_tag already exists for the user, and will be deleted if empty or null. If id_user isn’t set, will update current user preferences

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • user_preference.id_user (integer)

  • user_preference.id_user_preference (integer)

  • user_preference.user_preference_app_tag (string)

  • user_preference.user_preference_preference (string)

Status Codes:
GET /user/users/usergroups

Get user - user group information. At least one “id” field must be specified

Query Parameters:
  • id_user_group (integer) – ID of the user group to query

  • id_user (integer) – ID of the user to get all user groups

  • list (boolean) – Flag that limits the returned data to minimal information

  • with_empty (boolean) – Used with id_user, also returns users groups that the user is not part of. Used with id_user_group, also returns users not part of that user group.

  • token (string) – Secret token

Status Codes:
POST /user/users/usergroups

Create / update user - user group relationship, creating it if it doesn’t exist, updating it otherwise.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • user_user_group.id_user (integer)

  • user_user_group.id_user_group (integer)

  • user_user_group.id_user_user_group (integer)

Status Codes:
DELETE /user/users/usergroups

Delete a specific user - user group relationship

Query Parameters:
  • id (integer) – User - User group relationship ID to delete

  • token (string) – Secret token

Status Codes:
GET /user/versions

Get server versions

Query Parameters:
  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - returns versions information

  • 400 Bad Request – Required parameter is missing

  • 403 Forbidden – Logged user doesn’t have permission to access the requested data

POST /user/versions

Post server versions

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • ClientVersions.client_description (string)

  • ClientVersions.client_documentation_url (string)

  • ClientVersions.client_linux_download_url (string)

  • ClientVersions.client_mac_download_url (string)

  • ClientVersions.client_name (string)

  • ClientVersions.client_version (string)

  • ClientVersions.client_windows_download_url (string)

Status Codes:

device

GET /device/assets

Get device assets based specified session or asset ID or, if no parameters, get all assets

Query Parameters:
  • asset_uuid (string) – Asset UUID to query

  • id_asset (integer) – Asset ID to query

  • id_session (integer) – Session ID to query assets for

  • with_urls (boolean) – Also include assets infos and download-upload url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • token (string) – Secret Token

Status Codes:
GET /device/devices

Return device information.

Query Parameters:
  • token (string) – Secret token

Status Codes:
POST /device/devices

Update a device. A device can only update its own data. For now, only device_config can be updated with that API.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /device/login

Login device with Token.

Query Parameters:
  • token (string) – Secret Token

Status Codes:
GET /device/logout

Device logout.

Query Parameters:
  • token (string) – Secret Token

Status Codes:
GET /device/participants

Return participant information, if allowed.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /device/register

Register a device to use token identification. This endpoint is rate limited. If the device type key doesn’t exist, a new one will be created. Same behavior for subtype name.

Query Parameters:
  • key (string) – Server device registration key

  • name (string) – Device name to use

  • type_key (string) – Device type key to use

  • subtype_name (string) – Device subtype name to use

  • onlineable (boolean) – Device can get online status

Status Codes:
POST /device/register

Register a device with certificate request. This endpoint is rate limited. If the device type key doesn’t exist, a new one will be created. Same behavior for subtype name.Use application/octet-stream to send CSR.

Status Codes:
  • 200 OK – Success - returns registration information. Devices must then be enabled by admin.

  • 400 Bad Request – Missing or invalid parameter

  • 401 Unauthorized – Unauthorized - provided registration key is invalid

GET /device/sessions

Get session

Query Parameters:
  • id_session (integer) – Session ID

  • list (boolean) – List all sessions

  • token (string) – Secret token

Status Codes:
POST /device/sessions

Update/Create session

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session.id_session (integer) – (required)

  • session.id_session_type (integer) – (required)

  • session.session_name (string) – (required)

  • session.session_participants[] (string)

  • session.session_start_datetime (string) – (required)

  • session.session_status (integer) – (required)

Status Codes:
DELETE /device/sessions
Status Codes:
GET /device/sessions/events

Get session events

Query Parameters:
  • id_session (integer) – Session ID

  • token (string) – Secret token

Status Codes:
POST /device/sessions/events

Update/Create session events

Query Parameters:
  • token (string) – Secret token

Status Codes:
DELETE /device/sessions/events
Status Codes:
POST /device/status

Set the device status (will update UserManagerModule).

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • status (object) – (required)

  • timestamp (number) – (required)

Status Codes:

participant

GET /participant/assets

Get participant assets based on the ID or, if no parameters, get all assets

Query Parameters:
  • asset_uuid (string) – Asset UUID to query

  • id_asset (integer) – Asset ID to query

  • with_urls (boolean) – Also include assets infos and download-upload url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 403 Forbidden – Participant doesn’t have access to the specified asset

GET /participant/devices

Query devices associated with a participant.

Query Parameters:
  • id_device (integer) – ID of the device to query

  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
GET /participant/login

Participant login with HTTPAuth

Query Parameters:
  • with_websocket (boolean) – If set, requires that a websocket url is returned.If not possible to do so, return a 403 error.

  • token (string) – Secret token

Status Codes:
GET /participant/logout

Logout participant

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /participant/participants

Return participant information.

Query Parameters:
  • list (boolean) – Flag that limits the returned data to minimal information

  • token (string) – Secret token

Status Codes:
POST /participant/participants

To be documented To be documented

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /participant/refresh_token

Refresh token, old token needs to be passed in request headers.

Query Parameters:
  • token (string) – Secret token

Status Codes:
GET /participant/sessions

Get session associated with participant.

Query Parameters:
  • id_session (integer) – ID of the session to query

  • session_uuid (string) – Session UUID to query

  • status (integer) – Limit to specific session status

  • limit (integer) – Maximum number of results to return

  • offset (integer) – Number of items to ignore in results, offset from 0-index

  • list (boolean) – Flag that limits the returned data to minimal information

  • start_date (string) – Start date, sessions before that date will be ignored

  • end_date (string) – End date, sessions after that date will be ignored

  • token (string) – Secret token

Status Codes:
POST /participant/sessions

To be documented To be documented

Query Parameters:
  • token (string) – Secret token

Status Codes:

service

GET /service/access

Return access information.

Query Parameters:
  • from_user_uuid (string) – Participant uuid requesting access

  • from_participant_uuid (string) – Participant uuid requesting access

  • from_device_uuid (string) – Participant uuid requesting access

  • with_users (boolean) – List accessible users

  • with_projects (boolean) – List accessible projects

  • with_participants (boolean) – List accessible participants

  • with_devices (boolean) – List accessible device

  • with_sites (boolean) – List accessible site

  • admin (boolean) – List only accessible with admin rights

  • with_names (boolean) – Also includes the names of the returned items

  • token (string) – Secret token

Status Codes:
GET /service/assets

Return assets information.

Query Parameters:
  • id_asset (integer) – Specific ID of asset to query information.

  • id_device (integer) – ID of the device from which to request all assets

  • id_session (integer) – ID of session from which to request all assets

  • id_participant (integer) – ID of participant from which to request all assets

  • id_user (integer) – ID of the user from which to request all assets.

  • service_uuid (string) – Query all assets associated with that service uuid

  • id_creator_service (integer) – ID of the service from which to request all created assets.

  • id_creator_user (integer) – ID of the user from which to request all created assets.

  • id_creator_participant (integer) – ID of the participant from which to request all created assets.

  • id_creator_device (integer) – ID of the device from which to request all created assets.

  • with_urls (boolean) – Also include assets infos and download-upload url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • token (string) – Secret token

Status Codes:
POST /service/assets

Adds a new asset to the OpenTera database

Query Parameters:
  • token (string) – Secret token

Status Codes:
DELETE /service/assets

Delete a specific asset

Query Parameters:
  • uuid (string) – Asset UUID to delete

  • token (string) – Secret token

Status Codes:
GET /service/devices

Return device information.

Query Parameters:
  • device_uuid (string) – Device uuid of the device to query

  • with_device_type (boolean) – Give more information about type

  • with_device_subtype (boolean) – Give more information about subtype

  • with_device_assets (boolean) – Give more information about assets

  • token (string) – Secret token

Status Codes:
POST /service/devices

Update device information

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • device.device_certificate (string)

  • device.device_config (string)

  • device.device_enabled (boolean)

  • device.device_infos (string)

  • device.device_lastonline (string)

  • device.device_name (string)

  • device.device_notes (string)

  • device.device_onlineable (boolean)

  • device.device_token (string)

  • device.device_uuid (string)

  • device.id_device (integer)

  • device.id_device_subtype (integer)

  • device.id_device_type (integer)

Status Codes:
GET /service/disconnect

Disconnect user/participant/device from server.

Query Parameters:
  • id_user (integer) – ID of the user to query

  • user_uuid (string) – User uuid of the device to query

  • id_participant (integer) – ID of the participant to query

  • participant_uuid (string) – Participant uuid of the device to query

  • id_device (integer) – ID of the device to query

  • device_uuid (string) – Device uuid of the device to query

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success - user/participant/device will be disconnected.

  • 400 Bad Request – No parameters specified at least one id / uuid must be used

  • 403 Forbidden – Forbidden access. Please check that the service has access to the requested id/uuid.

  • 500 Internal Server Error – Database error

GET /service/groups

Return participant group information.

Query Parameters:
  • id_participant_group (integer) – ID to query

  • id_project (integer) – ID project to query information

  • token (string) – Secret token

Status Codes:
POST /service/groups

Update participant group

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • participant_group.id_participant_group (integer)

  • participant_group.id_project (integer)

  • participant_group.participant_group_name (string)

Status Codes:
DELETE /service/groups

Delete a specific participant group.

Query Parameters:
  • id (integer) – ID to delete

  • token (string) – Secret token

Status Codes:
GET /service/participants

Return participant information.

Query Parameters:
  • participant_uuid (string) – Participant uuid of the participant to query

  • id_project (integer) – Project ID to query all participants for

  • id_participant_group (integer) – Participant group to query all participants for

  • name (string) – Return participants with at least a partial match on their name.

  • token (string) – Secret token

Status Codes:
POST /service/participants

Update participant

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • participant.id_participant (integer) – (required)

  • participant.id_project (integer) – (required)

  • participant.participant_email (string) – (required)

  • participant.participant_name (string) – (required)

Status Codes:
GET /service/projects

Return projects information.

Query Parameters:
  • id_project (integer) – ID of the project to query

  • id_site (integer) – ID of the site to query projects for

  • token (string) – Secret token

Status Codes:
POST /service/projects

Create / update projects. id_project must be set to “0” to create a new project. A project can be created/modified if the service is associated to the related site

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • project.id_project (integer)

  • project.id_site (integer)

  • project.project_description (string)

  • project.project_enabled (boolean)

  • project.project_name (string)

Status Codes:
DELETE /service/projects

Delete a specific project

Query Parameters:
  • id (integer) – Project ID to delete

  • token (string) – Secret token

Status Codes:
GET /service/roles

Get service roles for that service

Query Parameters:
  • token (string) – Secret token

Status Codes:
POST /service/roles

Create / update service roles.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_role.id_project (integer)

  • service_role.id_service (integer)

  • service_role.id_service_role (integer)

  • service_role.id_site (integer)

  • service_role.service_role_name (string)

Status Codes:
DELETE /service/roles

Delete a specific service role.

Query Parameters:
  • id (integer) – Service role to delete

  • token (string) – Secret token

Status Codes:
GET /service/serviceaccess

Get access roles for a specific items. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_user_group (integer) – Usergroup ID to query service access

  • token (string) – Secret token

Status Codes:
POST /service/serviceaccess

Create/update service - access association. A list can be posted - if an item with a id_service_access doesn’t have an id_service_role element, it will be deleted.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • service_access.id_device (integer)

  • service_access.id_participant_group (integer)

  • service_access.id_service_access (integer)

  • service_access.id_service_role (integer)

  • service_access.id_user_group (integer)

Status Codes:
DELETE /service/serviceaccess

Delete a specific service access.

Query Parameters:
  • id (integer) – Specific service access ID to delete. Be careful: this is not the service or service role ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
GET /service/services

Return services information.

Query Parameters:
  • id_service (integer) – ID of the service to query

  • uuid_service (string) – UUID of the service to query

  • service_key (string) – Key of the service to query

  • with_base_url (boolean) – Also include base external URL for that service

  • token (string) – Secret token

Status Codes:
GET /service/sessions

Return sessions information.

Query Parameters:
  • id_session (integer) – ID of the session to query

  • uuid_session (string) – UUID of the session to query

  • id_participant (integer) – ID of the participant to query

  • id_user (integer) – ID of the user to query

  • id_device (integer) – ID of the device to query

  • list (boolean) – Flag that limits the returned data to minimal information

  • with_events (boolean) – Also includes session events

  • with_session_type (boolean) – Also includes session type information

  • status (integer) – Limit to specific session status

  • limit (integer) – Maximum number of results to return

  • offset (integer) – Number of items to ignore in results, offset from 0-index

  • start_date (string) – Start date, sessions before that date will be ignored

  • end_date (string) – End date, sessions after that date will be ignored

  • token (string) – Secret token

Status Codes:
POST /service/sessions

Create / update session. id_session must be set to “0” to create a new session.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session.id_creator_device (integer)

  • session.id_creator_participant (integer)

  • session.id_creator_service (integer)

  • session.id_creator_user (integer)

  • session.id_session (integer)

  • session.id_session_type (integer)

  • session.session_comments (string)

  • session.session_duration (integer)

  • session.session_name (string)

  • session.session_parameters (string)

  • session.session_start_datetime (string)

  • session.session_status (integer)

  • session.session_uuid (string)

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Badly formed JSON or missing fields(session, id_session, session_participants_ids and/or session_users_ids[for new sessions]) in the JSON body

  • 403 Forbidden – Service can’t create/update the specified session

  • 500 Internal Server Error – Internal error when saving session

GET /service/sessions/events

Get events for a specific session

Query Parameters:
  • id_session (integer) – ID of the session to query events for

  • token (string) – Secret token

Status Codes:
POST /service/sessions/events

Create / update session events. id_session_event must be set to “0” to create a new event. An event can be created/modified if the user has access to the session.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_event.id_session (integer)

  • session_event.id_session_event (integer)

  • session_event.id_session_event_type (integer)

  • session_event.session_event_context (string)

  • session_event.session_event_datetime (string)

  • session_event.session_event_text (string)

Status Codes:
POST /service/sessions/manager

Manage a specific session

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • session_manage.action (string) – (required)

  • session_manage.id_creator_device (integer)

  • session_manage.id_creator_participant (integer)

  • session_manage.id_creator_service (integer)

  • session_manage.id_creator_user (integer)

  • session_manage.id_service (integer)

  • session_manage.id_session (integer)

  • session_manage.id_session_type (integer)

  • session_manage.parameters (object)

  • session_manage.session_devices[] (string)

  • session_manage.session_participants[] (string)

  • session_manage.session_users[] (string)

  • session_manage.session_uuid (str)

Status Codes:
GET /service/sessiontypes

Return session types information for the current service

Query Parameters:
  • id_site (integer) – ID of the site to query session types for

  • id_project (integer) – ID of the project to query session types for

  • id_participant (integer) – ID of the participant to query types for

  • id_session_type (integer) – ID of the session type to query

  • token (string) – Secret token

Status Codes:
GET /service/sites

Return sites information.

Query Parameters:
  • id_site (integer) – ID of the site to query

  • id_user (integer) – ID of the user to query sites for

  • token (string) – Secret token

Status Codes:
GET /service/tests

Return tests information.

Query Parameters:
  • id_test (integer) – Specific ID of test to query information.

  • id_device (integer) – ID of the device from which to request all tests

  • id_session (integer) – ID of session from which to request all tests

  • id_participant (integer) – ID of participant from which to request all tests

  • id_user (integer) – ID of the user from which to request all tests.

  • service_uuid (string) – Query all tests associated with that service uuid

  • with_urls (boolean) – Also include tests infos and download-upload url

  • with_only_token (boolean) – Only includes the access token. Will ignore with_urls if specified.

  • token (string) – Secret token

Status Codes:
POST /service/tests

Adds a new test to the OpenTera database

Query Parameters:
  • token (string) – Secret token

Status Codes:
DELETE /service/tests

Delete a specific test

Query Parameters:
  • uuid (string) – Test UUID to delete

  • token (string) – Secret token

Status Codes:
GET /service/testtypes

Return test types information for the current service

Query Parameters:
  • id_site (integer) – ID of the site to query test types for

  • id_project (integer) – ID of the project to query test types for

  • id_participant (integer) – ID of the participant to query types for

  • test_type_key (string) – Test type key to query for

  • id_test_type (integer) – ID of the test type to query for

  • token (string) – Secret token

Status Codes:
POST /service/testtypes

Create / update test type. id_test_type must be set to “0” to create a new type.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • test_type.id_service (integer)

  • test_type.id_test_type (integer)

  • test_type.test_type_description (string)

  • test_type.test_type_has_json_format (boolean)

  • test_type.test_type_has_web_editor (boolean)

  • test_type.test_type_has_web_format (boolean)

  • test_type.test_type_key (string)

  • test_type.test_type_name (string)

  • test_type.test_type_uuid (string)

Status Codes:
DELETE /service/testtypes

Delete a specific test type

Query Parameters:
  • uuid (string) – Test type UUID to delete

  • token (string) – Secret token

Status Codes:
GET /service/testtypes/projects

Get test types that are associated with a project. Only one “ID” parameter required and supported at once.

Query Parameters:
  • id_project (integer) – Project ID to query associated test types from

  • id_test_type (integer) – Test type ID to query associated projects from

  • with_sites (boolean) – Used with id_test_type. Also return site information of the returned projects.

  • token (string) – Secret token

Status Codes:
POST /service/testtypes/projects

Create/update test-type - project association.

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • test_type_project.id_project (integer)

  • test_type_project.id_test_type (integer)

  • test_type_project.id_test_type_project (integer)

Status Codes:
DELETE /service/testtypes/projects

Delete a specific test-type - project association.

Query Parameters:
  • id (integer) – Specific test type - project association ID to delete. Be careful: this is not the test-type or project ID, but the ID of the association itself!

  • token (string) – Secret token

Status Codes:
  • 200 OK – Success

  • 400 Bad Request – Association not found (invalid id?)

  • 403 Forbidden – Logged service can’t delete association (no access to test-type or project)

GET /service/usergroups

Get user group information. If no id specified, returns all accessible users groups

Query Parameters:
  • id_user_group (integer) – ID of the user group to query

  • id_project (integer) – ID of the project to query user group with access to

  • id_site (integer) – ID of the site to query user group with access to

  • token (string) – Secret token

Status Codes:
POST /service/usergroups

Create / update user group. id_user_group must be set to “0” to create a new user group. User groups can be modified if the service can access it (user group has a service role).

Query Parameters:
  • token (string) – Secret token

Request JSON Object:
  • user_group.id_user_group (integer)

  • user_group.user_group_name (string)

Status Codes:
DELETE /service/usergroups

Delete a specific user group

Query Parameters:
  • id (integer) – User group ID to delete

  • token (string) – Secret token

Status Codes:
GET /service/users

Return user information.

Query Parameters:
  • user_uuid (string) – User uuid of the user to query

  • token (string) – Secret token

Status Codes:
GET /service/users/access

Return access roles information to this service for a specific user.

Query Parameters:
  • id_project (integer) – ID of the project to query

  • id_site (integer) – ID of the site to query

  • uuid_user (string) – UUID of the user

  • token (string) – Secret token

Status Codes:

test

GET /test/database/reset

Reset database to default values

Status Codes: