From c9b0837044184f9484f87bffa43e1ef47258bfa3 Mon Sep 17 00:00:00 2001 From: Jonas Emmert <63006948+joXemMx@users.noreply.github.com> Date: Fri, 13 Feb 2026 21:32:44 +0100 Subject: [PATCH 01/14] remove --headless parameter --- .github/workflows/NewUpdate.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index ed6eb63b..00f5dc62 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -54,7 +54,7 @@ jobs: echo "API Ready" - name: Run Rest Api with strings run: | - bash .updater/api/sirius/bin/sirius REST --headless --api-mode=STABLE -p 8080 -s & + bash .updater/api/sirius/bin/sirius REST --api-mode=STABLE -p 8080 -s & - name: Update api-docs-strings.json run: | while ! nc -z localhost 8080; do sleep 0.1; done @@ -64,7 +64,7 @@ jobs: run: curl -X POST http://localhost:8080/actuator/shutdown - name: Run Rest Api with enums run: | - bash .updater/api/sirius/bin/sirius REST --headless --api-mode=STABLE --enums-as-ref -p 8080 -s & + bash .updater/api/sirius/bin/sirius REST --api-mode=STABLE --enums-as-ref -p 8080 -s & - name: Update api-docs-enums.json run: | while ! nc -z localhost 8080; do sleep 0.1; done From 622b56cf84378bd3b9bc6bfffd492269b6bdefb3 Mon Sep 17 00:00:00 2001 From: joXemMx Date: Fri, 13 Feb 2026 20:37:01 +0000 Subject: [PATCH 02/14] Auto-Updated OpenAPI Clients --- .updater/api/api-docs-enums.json | 11205 +-------------- .updater/api/api-docs-strings.json | 11575 +--------------- client-api_python/formatting/format_init.sh | 0 .../generated/PySirius/api_client.py | 2 +- client-api_r/generated/R/api_client.R | 830 +- client-api_r/generated/R/rsirius_sdk.R | 870 +- ..._wait_for_job_completion_in_rsirius_api.sh | 0 7 files changed, 853 insertions(+), 23629 deletions(-) mode change 100644 => 100755 client-api_python/formatting/format_init.sh mode change 100644 => 100755 client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh diff --git a/.updater/api/api-docs-enums.json b/.updater/api/api-docs-enums.json index f8b3728b..ab3367d5 100644 --- a/.updater/api/api-docs-enums.json +++ b/.updater/api/api-docs-enums.json @@ -1,11204 +1 @@ -{ - "openapi": "3.0.1", - "info": { - "title": "SIRIUS Nightsky API", - "description": "REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6", - "version": "3.1" - }, - "servers": [ - { - "url": "http://localhost:8080", - "description": "Generated server url" - } - ], - "tags": [ - { - "name": "Tags", - "description": "[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Info", - "description": "Status und Information" - }, - { - "name": "Feature Statistics", - "description": "[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Jobs", - "description": "Start, monitor and cancel background jobs." - }, - { - "name": "Compounds", - "description": "This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)" - }, - { - "name": "Login and Account", - "description": "Perform signIn, signOut and signUp. Get tokens and account information." - }, - { - "name": "Actuator", - "description": "Monitor and interact", - "externalDocs": { - "description": "Spring Boot Actuator Web API Documentation", - "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" - } - }, - { - "name": "Searchable Databases", - "description": "Manage structure and spectral databases that can be used by various computational methods." - }, - { - "name": "Features", - "description": "This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries." - }, - { - "name": "Projects", - "description": "Manage SIRIUS projects." - }, - { - "name": "Runs", - "description": "[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Compound Statistics", - "description": "[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - } - ], - "paths": { - "/api/projects/{projectId}": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get project space info by its projectId.", - "description": "Get project space info by its projectId.", - "operationId": "getProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier tof the project-space to be accessed.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectInfoOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "put": { - "tags": [ - "Projects" - ], - "summary": "Open an existing project-space and make it accessible via the given projectId.", - "description": "Open an existing project-space and make it accessible via the given projectId.", - "operationId": "openProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pathToProject", - "in": "query", - "description": "local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", - "required": false, - "deprecated": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectInfoOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "post": { - "tags": [ - "Projects" - ], - "summary": "Create and open a new project-space at given location and make it accessible via the given projectId.", - "description": "Create and open a new project-space at given location and make it accessible via the given projectId.", - "operationId": "createProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pathToProject", - "in": "query", - "description": "local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", - "required": false, - "deprecated": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectInfoOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Projects" - ], - "summary": "Close project-space and remove it from the application", - "description": "Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.", - "operationId": "closeProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier of the project-space to be closed.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compact", - "in": "query", - "description": "if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.", - "required": false, - "deprecated": true, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/tags": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get all tag definitions in the given project-space", - "description": "[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTags", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagType", - "in": "query", - "description": "scope of the tag (optional)", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag definitions.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Add tags to the project", - "description": "[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "createTags", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "the tag definitions to be created", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinitionImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the definitions of the tags that have been created", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{runId}": { - "put": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Add tags to a run in the project", - "description": "[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "run to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/blanksubtract/compute": { - "put": { - "tags": [ - "Runs" - ], - "summary": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter", - "description": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

", - "operationId": "computeFoldChangeForBlankSubtraction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "description": "request with lists of run IDs that are sample, blank, and control runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SampleTypeFoldChangeRequest" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{compoundId}": { - "put": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Tags with the same name will be overwritten", - "description": "[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound (group of ion identities) to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchange/compute": { - "put": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", - "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "computeCompoundFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - }, - "put": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.", - "description": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.", - "operationId": "addDeNovoStructureCandidate", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "smiles", - "in": "query", - "description": "smiles", - "required": false, - "schema": { - "type": "string", - "default": "none" - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}": { - "put": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project", - "description": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "run to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchange/compute": { - "put": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", - "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "computeAlignedFeatureFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/delete": { - "put": { - "tags": [ - "Features" - ], - "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "deleteAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/databases/{databaseId}": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "put": { - "tags": [ - "Searchable Databases" - ], - "operationId": "updateDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabaseParameters" - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "post": { - "tags": [ - "Searchable Databases" - ], - "operationId": "createDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "pattern": "^[a-zA-Z0-9-_]+$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabaseParameters" - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Searchable Databases" - ], - "operationId": "removeDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "delete", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/subscriptions/select-active": { - "put": { - "tags": [ - "Login and Account" - ], - "summary": "Select a subscription as active subscription to be used for computations.", - "description": "Select a subscription as active subscription to be used for computations.", - "operationId": "selectSubscription", - "parameters": [ - { - "name": "sid", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Account information with updated active subscription", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/jobs": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get List of all available jobs with information such as current state and progress (if available).", - "description": "Get List of all available jobs with information such as current state and progress (if available).", - "operationId": "getJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Jobs" - ], - "summary": "Start computation for given compounds and with given parameters.", - "description": "Start computation for given compounds and with given parameters.", - "operationId": "startJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "command", - "progress" - ] - } - } - ], - "requestBody": { - "description": "configuration of the job that will be submitted of the job to be returned", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "* Delete ALL jobs.", - "description": "* Delete ALL jobs. Specify how to behave for running jobs.", - "operationId": "deleteJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete jobs from", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "cancelIfRunning", - "in": "query", - "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "awaitDeletion", - "in": "query", - "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/projects/{projectId}/jobs/from-config": { - "post": { - "tags": [ - "Jobs" - ], - "summary": "Start computation for given compounds and with parameters from a stored job-config.", - "description": "Start computation for given compounds and with parameters from a stored job-config.", - "operationId": "startJobFromConfig", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobConfigName", - "in": "query", - "description": "name if the config to be used", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "recompute", - "in": "query", - "description": "enable or disable recompute. If null the stored value will be used.", - "required": false, - "schema": { - "type": "boolean" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "command", - "progress" - ] - } - } - ], - "requestBody": { - "description": "List of alignedFeatureIds to be computed", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/preprocessed-data-files": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", - "description": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", - "operationId": "importPreprocessedData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ignoreFormulas", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "allowMs1Only", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "files to import into project", - "items": { - "type": "string", - "format": "binary" - } - } - } - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImportResult" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/preprocessed-data-files-job": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import ms/ms data from the given format into the specified project-space as background job.", - "description": "Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)", - "operationId": "importPreprocessedDataAsJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ignoreFormulas", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "allowMs1Only", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "items": { - "type": "string", - "format": "binary" - } - } - } - } - } - } - }, - "responses": { - "200": { - "description": "the import job.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/ms-data-files": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", - "description": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", - "operationId": "importMsRunData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "Project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles", - "parameters" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "Files to import into project.", - "items": { - "type": "string", - "format": "binary" - } - }, - "parameters": { - "$ref": "#/components/schemas/LcmsSubmissionParameters" - } - } - }, - "encoding": { - "parameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImportResult" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/ms-data-files-job": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import and Align full MS-Runs from various formats into the specified project as background job.", - "description": "Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)", - "operationId": "importMsRunDataAsJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "Project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "Set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles", - "parameters" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "Files to import into project.", - "items": { - "type": "string", - "format": "binary" - } - }, - "parameters": { - "$ref": "#/components/schemas/LcmsSubmissionParameters" - } - } - }, - "encoding": { - "parameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "the import job.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/groups/{groupName}": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get tag group by name in the given project-space", - "description": "[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getGroupByName", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of the group", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag group.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - }, - "post": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Group tags in the project", - "description": "[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addGroup", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of the new group", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "filter query to create the group", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "type of the group", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tag group that was added", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space", - "description": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteGroup", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of group to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "List of all available compounds (group of ion identities) in the given project-space.", - "description": "List of all available compounds (group of ion identities) in the given project-space.", - "operationId": "getCompounds", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Compounds" - ], - "summary": "Import Compounds and its contained features.", - "description": "Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.", - "operationId": "addCompounds", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "profile", - "in": "query", - "description": "profile describing the instrument used to measure the data. Used to merge spectra.", - "required": false, - "schema": { - "$ref": "#/components/schemas/InstrumentProfile" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "description": "set of optional fields of the nested features to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "requestBody": { - "description": "the compound data to be imported", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the Compounds that have been imported with specified optional fields", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get all available features (aligned over runs) in the given project-space.", - "description": "Get all available features (aligned over runs) in the given project-space.", - "operationId": "getAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Features" - ], - "summary": "Import (aligned) features into the project.", - "description": "Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.", - "operationId": "addAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "profile", - "in": "query", - "description": "profile describing the instrument used to measure the data. Used to merge spectra.", - "required": false, - "schema": { - "$ref": "#/components/schemas/InstrumentProfile" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "requestBody": { - "description": "the feature data to be imported", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FeatureImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the Features that have been imported with specified optional fields", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - } - } - }, - "/api/job-configs/{name}": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request job configuration with given name.", - "description": "Request job configuration with given name.", - "operationId": "getJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to return", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "{@link JobSubmission JobSubmission} for given name.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - }, - "post": { - "tags": [ - "Jobs" - ], - "summary": "Add new job configuration with given name.", - "description": "Add new job configuration with given name.", - "operationId": "saveJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to add", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "overrideExisting", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "requestBody": { - "description": "to add", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "Delete job configuration with given name.", - "description": "Delete job configuration with given name.", - "operationId": "deleteJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to delete", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/job-configs/get-command": { - "post": { - "tags": [ - "Jobs" - ], - "summary": "Get a CLI command for the given job configuration.", - "description": "Get a CLI command for the given job configuration.", - "operationId": "getCommand", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - } - }, - "/api/databases": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeWithErrors", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Searchable Databases" - ], - "summary": "DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.", - "operationId": "addDatabases", - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "deprecated": true - } - }, - "/api/databases/{databaseId}/import/from-files": { - "post": { - "tags": [ - "Searchable Databases" - ], - "summary": "Start import of structure and spectra files into the specified database.", - "description": "Start import of structure and spectra files into the specified database.", - "operationId": "importIntoDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "description": "database to import into", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "bufferSize", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1000 - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "files to be imported", - "items": { - "type": "string", - "format": "binary" - } - }, - "bioTransformerParameters": { - "$ref": "#/components/schemas/BioTransformerParameters" - } - } - }, - "encoding": { - "bioTransformerParameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "Meta-Information of the affected database after the import has been performed.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - }, - "/api/account/logout": { - "post": { - "tags": [ - "Login and Account" - ], - "summary": "Logout from SIRIUS web services.", - "description": "Logout from SIRIUS web services.", - "operationId": "logout", - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/login": { - "post": { - "tags": [ - "Login and Account" - ], - "summary": "Login into SIRIUS web services and activate default subscription if available.", - "description": "Login into SIRIUS web services and activate default subscription if available.", - "operationId": "login", - "parameters": [ - { - "name": "acceptTerms", - "in": "query", - "required": true, - "schema": { - "type": "boolean" - } - }, - { - "name": "failWhenLoggedIn", - "in": "query", - "description": "if true request fails if an active login already exists.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeSubs", - "in": "query", - "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "requestBody": { - "description": "used to log in.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountCredentials" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Basic information about the account that has been logged in and its subscriptions.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/actuator/shutdown": { - "post": { - "tags": [ - "Actuator" - ], - "summary": "Actuator web endpoint 'shutdown'", - "operationId": "shutdown", - "responses": { - "204": { - "description": "No Content" - }, - "400": { - "description": "Bad Request" - } - } - } - }, - "/api/projects/{projectId}/tags/{tagName}": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get tag definition by its name in the given project-space", - "description": "[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTag", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag definition.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space", - "description": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteTag", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag definition to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - }, - "patch": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Add a possible value to the tag definition in the project", - "description": "[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addPossibleValuesToTagDefinition", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "the tag definition to add the values to", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "object" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the definitions of the tags that have been added", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - }, - "/api/projects": { - "get": { - "tags": [ - "Projects" - ], - "summary": "List opened project spaces.", - "description": "List opened project spaces.", - "operationId": "getProjects", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/{runId}": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space", - "description": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "identifier of run to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "Run with tags (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Run" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{objectId}": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Run", - "description": "[EXPERIMENTAL] Get all tags associated with this Run", - "operationId": "getTagsForRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "RunId to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested object", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tagged": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get runs by tag", - "description": "[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunsByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get runs from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/page": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get all available runs in the given project-space", - "description": "[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunPageExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "Runs with tags (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/grouped": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get runs by tag group", - "description": "[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunsByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/npc-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CANOPUS prediction vector definition for NPC classes", - "operationId": "getCanopusNpcData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/jobs/{jobId}": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get job information and its current state and progress (if available).", - "description": "Get job information and its current state and progress (if available).", - "operationId": "getJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobId", - "in": "path", - "description": "of the job to be returned", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "Delete job.", - "description": "Delete job. Specify how to behave for running jobs.", - "operationId": "deleteJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete job from", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobId", - "in": "path", - "description": "of the job to be deleted", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "cancelIfRunning", - "in": "query", - "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "awaitDeletion", - "in": "query", - "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/projects/{projectId}/jobs/page": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get Page of jobs with information such as current state and progress (if available).", - "description": "Get Page of jobs with information such as current state and progress (if available).", - "operationId": "getJobsPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JobOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelJob" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/has-jobs": { - "get": { - "tags": [ - "Jobs" - ], - "operationId": "hasJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeFinished", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "boolean" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/groups": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get all tag based groups in the given project-space", - "description": "[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getGroups", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupType", - "in": "query", - "description": "type of the group", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Groups.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/fingerid-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CSI:FingerID fingerprint (prediction vector) definition", - "operationId": "getFingerIdData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "Get compound (group of ion identities) with the given identifier from the specified project-space.", - "description": "Get compound (group of ion identities) with the given identifier from the specified project-space.", - "operationId": "getCompound", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "identifier of the compound (group of ion identities) to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Compounds" - ], - "summary": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", - "description": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", - "operationId": "deleteCompound", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "identifier of the compound to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}/traces": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns the traces of the given compound", - "description": "[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound which intensities should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "featureId", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "Traces of the given compound.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}/quant-table-row": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given compound", - "description": "[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundQuantTableRowExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound which should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{objectId}": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Compound", - "description": "[EXPERIMENTAL] Get all tags associated with this Compound", - "operationId": "getTagsForCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "CompoundId to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested Compound", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tagged": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag", - "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundsByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get compounds (group of ion identities) from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged compounds (group of ion identities)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}": { - "get": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", - "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFoldChangesByCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "id of the object the fold changes are assigned to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "fold changes", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FoldChange" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table": { - "get": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", - "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundFoldChangeTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "table of fold changes.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsTable" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/quant-table": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns the full quantification table of compounds", - "description": "[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundQuantTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/page": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "Page of available compounds (group of ion identities) in the given project-space.", - "description": "Page of available compounds (group of ion identities) in the given project-space.", - "operationId": "getCompoundsPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/grouped": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group", - "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundsByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged compounds (group of ion identities)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/cf-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CANOPUS prediction vector definition for ClassyFire classes", - "operationId": "getCanopusClassyFireData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Get feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "getAlignedFeature", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeature with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Features" - ], - "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "deleteAlignedFeature", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature which intensities should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeAll", - "in": "query", - "description": "when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Traces of the given feature.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of spectral library matches for the given 'alignedFeatureId'.", - "description": "List of spectral library matches for the given 'alignedFeatureId'.", - "operationId": "getSpectralLibraryMatches", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatchOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library matches of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "Spectral library match for the given 'alignedFeatureId'.", - "description": "Spectral library match for the given 'alignedFeatureId'.", - "operationId": "getSpectralLibraryMatch", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "matchId", - "in": "path", - "description": "id of the library match to be returned.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatchOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library match with requested mathcId.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations", - "description": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedSpectralLibraryMatchExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "matchId", - "in": "path", - "description": "id of the library match to be returned.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Spectral library match with requested mathcId.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary": { - "get": { - "tags": [ - "Features" - ], - "summary": "Summarize matched reference spectra for the given 'alignedFeatureId'.", - "description": "Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.", - "operationId": "getSpectralLibraryMatchesSummary", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "description": "min threshold of shared peaks.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "description": "min spectral similarity threshold.", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "description": "2D inchi key of the compound in the structure database.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SpectralLibraryMatchSummary" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of spectral library matches for the given 'alignedFeatureId'.", - "description": "Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.", - "operationId": "getSpectralLibraryMatchesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatchOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library matches of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelSpectralLibraryMatch" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getQuantTableRowExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature which quantity should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "Quant table row for this feature", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ", - "description": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeatureQualityExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to access.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatureQuality quality information of the respective feature.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AlignedFeatureQualityExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data": { - "get": { - "tags": [ - "Features" - ], - "summary": "Mass Spec data (input data) for the given 'alignedFeatureId' .", - "description": "Mass Spec data (input data) for the given 'alignedFeatureId' .", - "operationId": "getMsData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the Mass Spec data belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Mass Spec data of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/MsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of FormulaResultContainers available for this feature with minimal information.", - "description": "List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", - "operationId": "getFormulaCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "All FormulaCandidate of this feature with.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidate" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "FormulaResultContainers for the given 'formulaId' with minimal information.", - "description": "FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.", - "operationId": "getFormulaCandidate", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "FormulaCandidate of this feature (aligned over runs) with.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FormulaCandidate" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ", - "description": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedSpectrumExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "inchiKey", - "in": "path", - "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "spectrumIndex", - "in": "query", - "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": -1 - } - }, - { - "name": "searchPrepared", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragments and sub-structures.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey", - "description": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedMsDataExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "inchiKey", - "in": "path", - "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragments and sub-structures.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedMsMsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns Lipid annotation (ElGordo) for the given formulaId", - "description": "Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.", - "operationId": "getLipidAnnotation", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "LipidAnnotation", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LipidAnnotation" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns Isotope pattern information for given formulaId\n ", - "description": "Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).", - "operationId": "getIsotopePatternAnnotation", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Isotope pattern information", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/IsotopePatternAnnotation" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ", - "description": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).", - "operationId": "getFragTree", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Fragmentation Tree", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FragmentationTree" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ", - "description": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.", - "operationId": "getFingerprintPrediction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "probabilistic fingerprint predicted by CSI:FingerID", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesByFormula", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesByFormulaPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateScored" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", - "description": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesByFormula", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", - "description": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesByFormulaPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateScored" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction": { - "get": { - "tags": [ - "Features" - ], - "summary": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", - "description": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", - "operationId": "getCanopusPrediction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Predicted compound classes", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CanopusPrediction" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes": { - "get": { - "tags": [ - "Features" - ], - "summary": "Return Best matching compound classes for given formulaId", - "description": "Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,", - "operationId": "getBestMatchingCompoundClasses", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Best matching Predicted compound classes", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CompoundClasses" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns a fragmentation spectrum (e", - "description": "Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.", - "operationId": "getFormulaAnnotatedSpectrum", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "spectrumIndex", - "in": "query", - "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": -1 - } - }, - { - "name": "searchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragment formulas and losses.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId", - "description": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.", - "operationId": "getFormulaAnnotatedMsMsData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectra annotated with fragment formulas and losses.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedMsMsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of FormulaResultContainers available for this feature with minimal information.", - "description": "Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", - "operationId": "getFormulaCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "All FormulaCandidate of this feature with.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelFormulaCandidate" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", - "description": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", - "description": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network", - "description": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAdductNetworkWithMergedTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "one feature that is considered the main feature of the adduct network", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{objectId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Object", - "description": "[EXPERIMENTAL] Get all tags associated with this Object", - "operationId": "getTagsForAlignedFeaturesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "object to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested object", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tagged": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag", - "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeaturesByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get features (aligned over runs) from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged features (aligned over runs)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}": { - "get": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", - "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFoldChangesByAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "id of the object the fold changes are assigned to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "fold changes", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FoldChange" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table": { - "get": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", - "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeatureFoldChangeTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "table of fold changes.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsTable" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/quant-table": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFeatureQuantTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "Quant table if akk feature in this project", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get all available features (aligned over runs) in the given project-space.", - "description": "Get all available features (aligned over runs) in the given project-space.", - "operationId": "getAlignedFeaturesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/grouped": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag group", - "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeaturesByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeatureOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged features (aligned over runs)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/job-configs": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request all available job configurations", - "description": "Request all available job configurations", - "operationId": "getJobConfigs", - "responses": { - "200": { - "description": "list of available {@link JobSubmission JobSubmission}s", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - } - } - }, - "/api/job-config-names": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "[DEPRECATED] Get all (non-default) job configuration names\n ", - "description": "[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.", - "operationId": "getJobConfigNames", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - }, - "deprecated": true - } - }, - "/api/info": { - "get": { - "tags": [ - "Info" - ], - "operationId": "getInfo", - "parameters": [ - { - "name": "serverInfo", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "updateInfo", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Info" - } - } - } - } - } - } - }, - "/api/default-job-config": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request default job configuration", - "description": "Request default job configuration", - "operationId": "getDefaultJobConfig", - "parameters": [ - { - "name": "includeConfigMap", - "in": "query", - "description": "if true, generic configmap with-defaults will be included", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeCustomDbsForStructureSearch", - "in": "query", - "description": "if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "{@link JobSubmission JobSubmission} with all parameters set to default values.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - } - } - } - } - }, - "/api/databases/included": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getIncludedDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - } - }, - "/api/databases/custom": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getCustomDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeWithErrors", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - } - }, - "/api/connection-status": { - "get": { - "tags": [ - "Info" - ], - "operationId": "getConnectionCheck", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ConnectionCheck" - } - } - } - } - } - } - }, - "/api/account/subscriptions": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get available subscriptions of the account currently logged in.", - "description": "Get available subscriptions of the account currently logged in. Fails if not logged in.", - "operationId": "getSubscriptions", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Subscription" - } - } - } - } - } - } - } - }, - "/api/account/signUp": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Open SignUp window in system browser and return signUp link.", - "description": "Open SignUp window in system browser and return signUp link.", - "operationId": "signUp", - "responses": { - "200": { - "description": "OK", - "content": { - "text/plain;charset=UTF-8": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/account/signUpURL": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get SignUp URL (For signUp via web browser)", - "description": "Get SignUp URL (For signUp via web browser)", - "operationId": "getSignUpURL", - "responses": { - "200": { - "description": "OK", - "content": { - "text/plain;charset=UTF-8": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/account/openPortal": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Open User portal in browser.", - "description": "Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.", - "operationId": "openPortal", - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/isLoggedIn": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Check if a user is logged in.", - "description": "Check if a user is logged in.", - "operationId": "isLoggedIn", - "responses": { - "200": { - "description": "true if the user is logged in", - "content": { - "application/json": { - "schema": { - "type": "boolean" - } - } - } - } - } - } - }, - "/api/account/": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get information about the account currently logged in.", - "description": "Get information about the account currently logged in. Fails if not logged in.", - "operationId": "getAccountInfo", - "parameters": [ - { - "name": "includeSubs", - "in": "query", - "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Basic information about the account that has been logged in and its subscriptions.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/actuator/health": { - "get": { - "tags": [ - "Actuator" - ], - "summary": "Actuator web endpoint 'health'", - "operationId": "health", - "responses": { - "200": { - "description": "OK", - "content": { - "application/vnd.spring-boot.actuator.v3+json": { - "schema": { - "type": "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json": { - "schema": { - "type": "object" - } - }, - "application/json": { - "schema": { - "type": "object" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{runId}/{tagName}": { - "delete": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "run to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}": { - "delete": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound (group of ion identities) to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges": { - "delete": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Delete fold changes", - "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteCompoundFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}": { - "delete": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges": { - "delete": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Delete fold changes", - "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteAlignedFeatureFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "required": false, - "schema": { - "$ref": "#/components/schemas/AggregationType" - } - }, - { - "name": "quantification", - "in": "query", - "required": false, - "schema": { - "$ref": "#/components/schemas/QuantMeasure" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - } - }, - "components": { - "schemas": { - "ProjectChangeEvent": { - "type": "object", - "properties": { - "eventType": { - "$ref": "#/components/schemas/ProjectEventType" - }, - "projectId": { - "type": "string" - }, - "compoundId": { - "type": "string", - "nullable": true - }, - "featuredId": { - "type": "string", - "nullable": true - }, - "formulaId": { - "type": "string", - "nullable": true - }, - "structureInChIKey": { - "type": "string", - "nullable": true - } - } - }, - "DataImportEvent": { - "required": [ - "importedCompoundIds", - "importedFeatureIds" - ], - "type": "object", - "properties": { - "importJobId": { - "type": "string", - "nullable": true - }, - "importedCompoundIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "importedFeatureIds": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "BackgroundComputationsStateEvent": { - "required": [ - "affectedJobs", - "numberOfFinishedJobs", - "numberOfJobs", - "numberOfRunningJobs" - ], - "type": "object", - "properties": { - "affectedJobs": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - }, - "numberOfJobs": { - "type": "integer", - "format": "int32" - }, - "numberOfRunningJobs": { - "type": "integer", - "format": "int32" - }, - "numberOfFinishedJobs": { - "type": "integer", - "format": "int32" - } - } - }, - "ProjectEventType": { - "type": "string", - "enum": [ - "PROJECT_OPENED", - "PROJECT_MOVED", - "PROJECT_CLOSED", - "FEATURE_CREATED", - "FEATURE_UPDATED", - "FEATURE_DELETED", - "RESULT_CREATED", - "RESULT_UPDATED", - "RESULT_DELETED" - ] - }, - "ProjectInfoOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "compatibilityInfo", - "sizeInformation" - ] - }, - "ProjectInfo": { - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "a user selected unique name of the project for easy access." - }, - "location": { - "type": "string", - "description": "storage location of the project." - }, - "description": { - "type": "string", - "description": "Description of this project.", - "nullable": true - }, - "type": { - "$ref": "#/components/schemas/ProjectType" - }, - "compatible": { - "type": "boolean", - "description": "Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.", - "nullable": true - }, - "numOfFeatures": { - "type": "integer", - "description": "Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').", - "format": "int32", - "nullable": true - }, - "numOfCompounds": { - "type": "integer", - "description": "Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.", - "format": "int32", - "nullable": true - }, - "numOfBytes": { - "type": "integer", - "description": "Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').", - "format": "int64", - "nullable": true - } - } - }, - "ProjectType": { - "type": "string", - "nullable": true, - "enum": [ - "UNIMPORTED", - "DIRECT_IMPORT", - "PEAKLISTS", - "ALIGNED_RUNS", - "UNALIGNED_RUNS" - ] - }, - "TagDefinitionImport": { - "required": [ - "tagName", - "valueType" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of this tag defined by this definition (key)" - }, - "description": { - "type": "string", - "description": "A human-readable description about the purpose of this tag.", - "nullable": true - }, - "tagType": { - "type": "string", - "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", - "nullable": true - }, - "valueType": { - "$ref": "#/components/schemas/ValueType" - }, - "possibleValues": { - "type": "array", - "nullable": true, - "items": { - "type": "object", - "nullable": true - } - }, - "minValue": { - "type": "object", - "nullable": true - }, - "maxValue": { - "type": "object", - "nullable": true - } - } - }, - "ValueType": { - "type": "string", - "enum": [ - "NONE", - "BOOLEAN", - "INTEGER", - "REAL", - "TEXT", - "DATE", - "TIME" - ] - }, - "TagDefinition": { - "required": [ - "tagName", - "valueType" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of this tag defined by this definition (key)" - }, - "description": { - "type": "string", - "description": "A human-readable description about the purpose of this tag.", - "nullable": true - }, - "tagType": { - "type": "string", - "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", - "nullable": true - }, - "valueType": { - "$ref": "#/components/schemas/ValueType" - }, - "possibleValues": { - "type": "array", - "nullable": true, - "items": { - "type": "object", - "nullable": true - } - }, - "minValue": { - "type": "object", - "nullable": true - }, - "maxValue": { - "type": "object", - "nullable": true - }, - "editable": { - "type": "boolean" - } - } - }, - "Tag": { - "required": [ - "tagName" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition." - }, - "value": { - "type": "object", - "description": "Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).", - "nullable": true - } - } - }, - "SampleTypeFoldChangeRequest": { - "type": "object", - "properties": { - "sampleRunIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "blankRunIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "controlRunIds": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "JobOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "Job": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier to access the job via the API" - }, - "command": { - "type": "string", - "description": "Command string of the executed Task", - "nullable": true - }, - "progress": { - "$ref": "#/components/schemas/JobProgress" - }, - "affectedCompoundIds": { - "type": "array", - "description": "List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "affectedAlignedFeatureIds": { - "type": "array", - "description": "List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "jobEffect": { - "$ref": "#/components/schemas/JobEffect" - } - }, - "description": "Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal." - }, - "JobEffect": { - "type": "string", - "nullable": true, - "enum": [ - "IMPORT", - "COMPUTATION", - "DELETION" - ] - }, - "JobProgress": { - "type": "object", - "properties": { - "indeterminate": { - "type": "boolean", - "description": "Is the progress indeterminate or not", - "nullable": true - }, - "state": { - "$ref": "#/components/schemas/JobState" - }, - "currentProgress": { - "type": "integer", - "description": "Current progress value of the job.", - "format": "int64", - "nullable": true - }, - "maxProgress": { - "type": "integer", - "description": "Progress value to reach (might also change during execution)", - "format": "int64", - "nullable": true - }, - "message": { - "type": "string", - "description": "Progress information and warnings.", - "nullable": true - }, - "errorMessage": { - "type": "string", - "description": "Error message if the job did not finish successfully failed.", - "nullable": true - } - }, - "description": "Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.", - "nullable": true - }, - "JobState": { - "type": "string", - "enum": [ - "WAITING", - "READY", - "QUEUED", - "SUBMITTED", - "RUNNING", - "CANCELED", - "FAILED", - "DONE" - ] - }, - "AggregationType": { - "type": "string", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - }, - "QuantMeasure": { - "type": "string", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - }, - "BasicSpectrum": { - "required": [ - "cosineQuery", - "peaks" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Optional Displayable name of this spectrum.", - "nullable": true - }, - "msLevel": { - "type": "integer", - "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", - "format": "int32", - "nullable": true - }, - "collisionEnergy": { - "type": "string", - "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", - "nullable": true - }, - "instrument": { - "type": "string", - "description": "Instrument information.", - "nullable": true - }, - "precursorMz": { - "type": "number", - "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", - "format": "double", - "nullable": true - }, - "scanNumber": { - "type": "integer", - "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", - "format": "int32", - "nullable": true - }, - "cosineQuery": { - "type": "boolean", - "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", - "default": false - }, - "precursorPeak": { - "$ref": "#/components/schemas/SimplePeak" - }, - "peaks": { - "type": "array", - "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", - "items": { - "$ref": "#/components/schemas/SimplePeak" - } - }, - "absIntensityFactor": { - "type": "number", - "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", - "format": "double", - "nullable": true, - "deprecated": true - }, - "maxNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to MAX norm.", - "format": "double", - "nullable": true - }, - "sumNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to SUM norm.", - "format": "double", - "nullable": true - }, - "l2NormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", - "format": "double", - "nullable": true - }, - "firstPeakNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "BinaryFingerprint": { - "type": "object", - "properties": { - "bitsSet": { - "type": "array", - "description": "Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)", - "items": { - "type": "integer", - "format": "int32" - } - }, - "length": { - "type": "integer", - "description": "Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits", - "format": "int32" - } - }, - "nullable": true - }, - "DBLink": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "nullable": true - }, - "PeakPair": { - "required": [ - "queryPeak", - "referencePeak" - ], - "type": "object", - "properties": { - "queryPeak": { - "type": "integer", - "format": "int32" - }, - "referencePeak": { - "type": "integer", - "format": "int32" - } - } - }, - "SimplePeak": { - "type": "object", - "properties": { - "mz": { - "type": "number", - "format": "double" - }, - "intensity": { - "type": "number", - "format": "double" - } - } - }, - "SpectralLibraryMatch": { - "required": [ - "inchiKey", - "querySpectrumIndex", - "similarity", - "uuid" - ], - "type": "object", - "properties": { - "specMatchId": { - "type": "string" - }, - "rank": { - "type": "integer", - "format": "int32" - }, - "similarity": { - "type": "number", - "description": "Similarity between query and reference spectrum", - "format": "float" - }, - "sharedPeaks": { - "type": "integer", - "description": "Number of shared/matched peaks", - "format": "int32" - }, - "sharedPeakMapping": { - "type": "array", - "description": "List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)", - "items": { - "$ref": "#/components/schemas/PeakPair" - } - }, - "querySpectrumIndex": { - "type": "integer", - "format": "int32" - }, - "dbName": { - "type": "string" - }, - "dbId": { - "type": "string" - }, - "uuid": { - "type": "integer", - "format": "int64" - }, - "splash": { - "type": "string" - }, - "molecularFormula": { - "type": "string" - }, - "adduct": { - "type": "string" - }, - "exactMass": { - "type": "number", - "format": "double" - }, - "smiles": { - "type": "string" - }, - "type": { - "$ref": "#/components/schemas/SpectralMatchType" - }, - "inchiKey": { - "type": "string" - }, - "referenceSpectrumType": { - "$ref": "#/components/schemas/SpectrumType" - }, - "referenceSpectrum": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "querySpectrumType": { - "$ref": "#/components/schemas/SpectrumType" - } - }, - "nullable": true - }, - "SpectralMatchType": { - "type": "string", - "default": "IDENTITY", - "enum": [ - "IDENTITY", - "ANALOG" - ] - }, - "SpectrumType": { - "type": "string", - "enum": [ - "SPECTRUM", - "MERGED_SPECTRUM" - ] - }, - "StructureCandidateFormula": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - }, - "rank": { - "type": "integer", - "description": "the overall rank of this candidate among all candidates of this feature", - "format": "int32" - }, - "csiScore": { - "type": "number", - "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", - "format": "double" - }, - "tanimotoSimilarity": { - "type": "number", - "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", - "format": "double", - "nullable": true - }, - "mcesDistToTopHit": { - "type": "number", - "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", - "format": "double", - "nullable": true - }, - "fingerprint": { - "$ref": "#/components/schemas/BinaryFingerprint" - }, - "molecularFormula": { - "type": "string", - "description": "Molecular formula of this candidate" - }, - "adduct": { - "type": "string", - "description": "Adduct of this candidate" - }, - "formulaId": { - "type": "string", - "description": "Id of the corresponding Formula candidate" - } - } - }, - "SearchableDatabaseParameters": { - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "display name of the database\n Should be short", - "nullable": true - }, - "location": { - "type": "string", - "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", - "nullable": true - }, - "matchRtOfReferenceSpectra": { - "type": "boolean", - "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", - "nullable": true, - "default": false - } - } - }, - "SearchableDatabase": { - "required": [ - "customDb", - "databaseId", - "searchable", - "updateNeeded" - ], - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "display name of the database\n Should be short", - "nullable": true - }, - "location": { - "type": "string", - "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", - "nullable": true - }, - "matchRtOfReferenceSpectra": { - "type": "boolean", - "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", - "nullable": true, - "default": false - }, - "databaseId": { - "type": "string", - "description": "A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name." - }, - "customDb": { - "type": "boolean", - "description": "Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified." - }, - "searchable": { - "type": "boolean", - "description": "True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search." - }, - "dbDate": { - "type": "string", - "description": "Date on which the data was imported / database was created.", - "nullable": true - }, - "dbVersion": { - "type": "integer", - "description": "database schema version", - "format": "int32", - "nullable": true - }, - "updateNeeded": { - "type": "boolean", - "description": "If true the database version is outdated and the database needs to be updated or re-imported before it can be used." - }, - "numberOfStructures": { - "type": "integer", - "description": "Number of unique compounds available in this database.", - "format": "int64", - "nullable": true - }, - "numberOfFormulas": { - "type": "integer", - "description": "Number of different molecular formulas available in this database.", - "format": "int64", - "nullable": true - }, - "numberOfReferenceSpectra": { - "type": "integer", - "description": "Number of reference spectra available in this database", - "format": "int64", - "nullable": true - }, - "errorMessage": { - "type": "string", - "description": "Error message if the database could not be loaded", - "nullable": true - } - } - }, - "AccountInfo": { - "type": "object", - "properties": { - "userID": { - "type": "string" - }, - "username": { - "type": "string", - "nullable": true - }, - "userEmail": { - "type": "string" - }, - "gravatarURL": { - "type": "string", - "nullable": true - }, - "subscriptions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Subscription" - } - }, - "activeSubscriptionId": { - "type": "string", - "nullable": true - } - } - }, - "AllowedFeatures": { - "type": "object", - "properties": { - "cli": { - "type": "boolean" - }, - "api": { - "type": "boolean" - }, - "deNovo": { - "type": "boolean" - }, - "importMSRuns": { - "type": "boolean" - }, - "importPeakLists": { - "type": "boolean" - }, - "importCef": { - "type": "boolean" - } - } - }, - "Subscription": { - "type": "object", - "properties": { - "sid": { - "type": "string", - "description": "Unique identifier of this subscription" - }, - "subscriberId": { - "type": "string", - "description": "ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid." - }, - "subscriberName": { - "type": "string", - "description": "Optional name of the owner of this subscription", - "nullable": true - }, - "expirationDate": { - "type": "string", - "format": "date-time", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time", - "nullable": true - }, - "countQueries": { - "type": "boolean", - "nullable": true - }, - "instanceLimit": { - "type": "integer", - "description": "Limit of instances (features) that can be computed with this subscription", - "format": "int32", - "nullable": true - }, - "instanceHashRecordingTime": { - "type": "integer", - "description": "Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is", - "format": "int32", - "nullable": true - }, - "maxQueriesPerInstance": { - "type": "integer", - "description": "Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.", - "format": "int32", - "nullable": true - }, - "maxUserAccounts": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "serviceUrl": { - "type": "string" - }, - "description": { - "type": "string", - "nullable": true - }, - "name": { - "type": "string", - "nullable": true - }, - "tos": { - "type": "string", - "nullable": true - }, - "pp": { - "type": "string", - "nullable": true - }, - "allowedFeatures": { - "$ref": "#/components/schemas/AllowedFeatures" - } - } - }, - "Canopus": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - } - }, - "description": "User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool", - "nullable": true - }, - "ConfidenceMode": { - "type": "string", - "nullable": true, - "enum": [ - "OFF", - "EXACT", - "APPROXIMATE" - ] - }, - "FingerprintPrediction": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "useScoreThreshold": { - "type": "boolean", - "description": "If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.", - "nullable": true - }, - "alwaysPredictHighRefMatches": { - "type": "boolean", - "description": "If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.", - "nullable": true - } - }, - "description": "User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool", - "nullable": true - }, - "InstrumentProfile": { - "type": "string", - "description": "Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.", - "nullable": true, - "enum": [ - "QTOF", - "ORBITRAP" - ] - }, - "IsotopeMs2Strategy": { - "type": "string", - "nullable": true, - "enum": [ - "IGNORE", - "FILTER", - "SCORE" - ] - }, - "JobSubmission": { - "type": "object", - "properties": { - "compoundIds": { - "type": "array", - "description": "Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "alignedFeatureIds": { - "type": "array", - "description": "Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "fallbackAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "enforcedAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "detectableAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "recompute": { - "type": "boolean", - "description": "Indicate if already existing result for a tool to be executed should be overwritten or not.", - "nullable": true - }, - "spectraSearchParams": { - "$ref": "#/components/schemas/SpectralLibrarySearch" - }, - "formulaIdParams": { - "$ref": "#/components/schemas/Sirius" - }, - "zodiacParams": { - "$ref": "#/components/schemas/Zodiac" - }, - "fingerprintPredictionParams": { - "$ref": "#/components/schemas/FingerprintPrediction" - }, - "canopusParams": { - "$ref": "#/components/schemas/Canopus" - }, - "structureDbSearchParams": { - "$ref": "#/components/schemas/StructureDbSearch" - }, - "msNovelistParams": { - "$ref": "#/components/schemas/MsNovelist" - }, - "configMap": { - "type": "object", - "additionalProperties": { - "type": "string", - "nullable": true - }, - "description": "As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", - "nullable": true - } - }, - "description": "Object to submit a job to be executed by SIRIUS" - }, - "MsNovelist": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "numberOfCandidateToPredict": { - "type": "integer", - "description": "Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.", - "format": "int32", - "nullable": true - } - }, - "nullable": true - }, - "Sirius": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "profile": { - "$ref": "#/components/schemas/InstrumentProfile" - }, - "numberOfCandidates": { - "type": "integer", - "description": "Number of formula candidates to keep as result list (Formula Candidates).", - "format": "int32", - "nullable": true - }, - "numberOfCandidatesPerIonization": { - "type": "integer", - "description": "Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.", - "format": "int32", - "nullable": true - }, - "massAccuracyMS2ppm": { - "type": "number", - "description": "Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.", - "format": "double", - "nullable": true - }, - "isotopeMs2Settings": { - "$ref": "#/components/schemas/IsotopeMs2Strategy" - }, - "filterByIsotopePattern": { - "type": "boolean", - "description": "When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.", - "nullable": true - }, - "enforceElGordoFormula": { - "type": "boolean", - "description": "El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.", - "nullable": true - }, - "performBottomUpSearch": { - "type": "boolean", - "description": "If true, molecular formula generation via bottom up search is enabled.", - "nullable": true - }, - "performDenovoBelowMz": { - "type": "number", - "description": "Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.", - "format": "double", - "nullable": true - }, - "formulaSearchDBs": { - "type": "array", - "description": "List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "applyFormulaConstraintsToDBAndBottomUpSearch": { - "type": "boolean", - "description": "By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.", - "nullable": true - }, - "enforcedFormulaConstraints": { - "type": "string", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered", - "nullable": true - }, - "fallbackFormulaConstraints": { - "type": "string", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)", - "nullable": true - }, - "detectableElements": { - "type": "array", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "ilpTimeout": { - "$ref": "#/components/schemas/Timeout" - }, - "useHeuristic": { - "$ref": "#/components/schemas/UseHeuristic" - }, - "injectSpecLibMatchFormulas": { - "type": "boolean", - "description": "If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied", - "nullable": true - }, - "minScoreToInjectSpecLibMatch": { - "type": "number", - "description": "Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.", - "format": "double", - "nullable": true - }, - "minPeaksToInjectSpecLibMatch": { - "type": "integer", - "description": "Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.", - "format": "int32", - "nullable": true - } - }, - "description": "User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.", - "nullable": true - }, - "SpectralLibrarySearch": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "spectraSearchDBs": { - "type": "array", - "description": "Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "precursorDeviationPpm": { - "type": "number", - "description": "Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.", - "format": "double", - "nullable": true - }, - "minSimilarity": { - "type": "number", - "description": "Minimal spectral similarity of a spectral match to be considered a hit.", - "format": "float", - "nullable": true - }, - "minNumOfPeaks": { - "type": "integer", - "description": "Minimal number of matching peaks of a spectral match to be considered a hit.", - "format": "int32", - "nullable": true - }, - "enableAnalogueSearch": { - "type": "boolean", - "description": "Enable analogue search in addition to the identity spectral library search" - }, - "minSimilarityAnalogue": { - "type": "number", - "description": "Minimal spectral similarity of a spectral match to be considered an analogue hit.", - "format": "float", - "nullable": true - }, - "minNumOfPeaksAnalogue": { - "type": "integer", - "description": "Minimal number of matching peaks of a spectral match to be considered an analogue hit.", - "format": "int32", - "nullable": true - }, - "scoring": { - "$ref": "#/components/schemas/SpectralMatchingType" - }, - "peakDeviationPpm": { - "type": "number", - "description": "NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.", - "format": "double", - "nullable": true, - "deprecated": true - } - }, - "description": "User/developer friendly parameter subset for the Spectral library search tool.", - "nullable": true - }, - "SpectralMatchingType": { - "type": "string", - "nullable": true, - "enum": [ - "INTENSITY", - "GAUSSIAN", - "MODIFIED_COSINE", - "FAST_COSINE" - ] - }, - "StructureDbSearch": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "structureSearchDBs": { - "type": "array", - "description": "Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "tagStructuresWithLipidClass": { - "type": "boolean", - "description": "Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.", - "nullable": true - }, - "expansiveSearchConfidenceMode": { - "$ref": "#/components/schemas/ConfidenceMode" - } - }, - "description": "User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.", - "nullable": true - }, - "Timeout": { - "type": "object", - "properties": { - "numberOfSecondsPerDecomposition": { - "type": "integer", - "format": "int32" - }, - "numberOfSecondsPerInstance": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "UseHeuristic": { - "type": "object", - "properties": { - "useHeuristicAboveMz": { - "type": "integer", - "format": "int32" - }, - "useOnlyHeuristicAboveMz": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "Zodiac": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "consideredCandidatesAt300Mz": { - "type": "integer", - "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.", - "format": "int32", - "nullable": true - }, - "consideredCandidatesAt800Mz": { - "type": "integer", - "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.", - "format": "int32", - "nullable": true - }, - "runInTwoSteps": { - "type": "boolean", - "description": "As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.", - "nullable": true - }, - "edgeFilterThresholds": { - "$ref": "#/components/schemas/ZodiacEdgeFilterThresholds" - }, - "gibbsSamplerParameters": { - "$ref": "#/components/schemas/ZodiacEpochs" - }, - "librarySearchAnchors": { - "$ref": "#/components/schemas/ZodiacLibraryScoring" - }, - "analogueSearchAnchors": { - "$ref": "#/components/schemas/ZodiacAnalogueNodes" - } - }, - "description": "User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool", - "nullable": true - }, - "ZodiacAnalogueNodes": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "minSimilarity": { - "type": "number", - "format": "double" - }, - "minSharedPeaks": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacEdgeFilterThresholds": { - "type": "object", - "properties": { - "thresholdFilter": { - "type": "number", - "format": "double" - }, - "minLocalCandidates": { - "type": "integer", - "format": "int32" - }, - "minLocalConnections": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacEpochs": { - "type": "object", - "properties": { - "iterations": { - "type": "integer", - "format": "int32" - }, - "burnInPeriod": { - "type": "integer", - "format": "int32" - }, - "numberOfMarkovChains": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacLibraryScoring": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "minSimilarity": { - "type": "number", - "format": "double" - } - }, - "nullable": true - }, - "ImportResult": { - "required": [ - "affectedAlignedFeatureIds", - "affectedCompoundIds" - ], - "type": "object", - "properties": { - "affectedCompoundIds": { - "type": "array", - "description": "List of compoundIds that have been imported.", - "items": { - "type": "string" - } - }, - "affectedAlignedFeatureIds": { - "type": "array", - "description": "List of alignedFeatureIds that have been imported..", - "items": { - "type": "string" - } - } - } - }, - "Deviation": { - "type": "object", - "properties": { - "ppm": { - "type": "number", - "format": "double" - }, - "absolute": { - "type": "number", - "format": "double" - } - }, - "nullable": true - }, - "LcmsSubmissionParameters": { - "type": "object", - "properties": { - "alignLCMSRuns": { - "type": "boolean", - "description": "Specifies whether LC/MS runs should be aligned", - "default": true - }, - "noiseIntensity": { - "type": "number", - "description": "Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.", - "format": "double", - "default": -1 - }, - "traceMaxMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "alignMaxMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "alignMaxRetentionTimeDeviation": { - "type": "number", - "description": "Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.", - "format": "double", - "default": -1 - }, - "minSNR": { - "type": "number", - "description": "Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory", - "format": "double", - "default": 3 - } - } - }, - "TagGroup": { - "type": "object", - "properties": { - "groupName": { - "type": "string", - "description": "Name of this Grouping query." - }, - "luceneQuery": { - "type": "string", - "description": "Query used to group the entities in lucene format." - }, - "groupType": { - "type": "string" - } - } - }, - "CompoundImport": { - "required": [ - "features" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Some (optional) human-readable name", - "nullable": true - }, - "features": { - "type": "array", - "description": "The features this compound consists of.", - "items": { - "$ref": "#/components/schemas/FeatureImport" - } - } - } - }, - "DataQuality": { - "type": "string", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "FeatureImport": { - "required": [ - "charge", - "ionMass" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "nullable": true - }, - "externalFeatureId": { - "type": "string", - "description": "Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.", - "nullable": true - }, - "ionMass": { - "type": "number", - "format": "double" - }, - "charge": { - "type": "integer", - "format": "int32" - }, - "detectedAdducts": { - "uniqueItems": true, - "type": "array", - "description": "Detected adducts of this feature. Can be NULL or empty if no adducts are known.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "rtStartSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtApexSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "dataQuality": { - "$ref": "#/components/schemas/DataQuality" - }, - "mergedMs1": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "ms1Spectra": { - "type": "array", - "description": "List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.", - "nullable": true, - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "ms2Spectra": { - "type": "array", - "description": "List of MS/MS spectra that belong to this feature.", - "nullable": true, - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - } - }, - "description": "Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail." - }, - "CompoundOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "AlignedFeatureOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "AlignedFeature": { - "required": [ - "charge", - "detectedAdducts" - ], - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string" - }, - "compoundId": { - "type": "string" - }, - "name": { - "type": "string" - }, - "externalFeatureId": { - "type": "string", - "description": "Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source." - }, - "ionMass": { - "type": "number", - "format": "double" - }, - "charge": { - "type": "integer", - "description": "Ion mode (charge) this feature has been measured in.", - "format": "int32" - }, - "detectedAdducts": { - "uniqueItems": true, - "type": "array", - "description": "Adducts of this feature that have been detected during preprocessing.", - "items": { - "type": "string" - } - }, - "rtStartSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtApexSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "quality": { - "$ref": "#/components/schemas/DataQuality" - }, - "hasMs1": { - "type": "boolean", - "description": "If true, the feature has at lease one MS1 spectrum" - }, - "hasMsMs": { - "type": "boolean", - "description": "If true, the feature has at lease one MS/MS spectrum" - }, - "msData": { - "$ref": "#/components/schemas/MsData" - }, - "topAnnotations": { - "$ref": "#/components/schemas/FeatureAnnotations" - }, - "topAnnotationsDeNovo": { - "$ref": "#/components/schemas/FeatureAnnotations" - }, - "computing": { - "type": "boolean", - "description": "Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results" - }, - "computedTools": { - "$ref": "#/components/schemas/ComputedSubtools" - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - }, - "description": "The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view." - }, - "AnnotatedPeak": { - "type": "object", - "properties": { - "mz": { - "type": "number", - "format": "double" - }, - "intensity": { - "type": "number", - "format": "double" - }, - "peakAnnotation": { - "$ref": "#/components/schemas/PeakAnnotation" - } - } - }, - "AnnotatedSpectrum": { - "required": [ - "cosineQuery", - "peaks" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Optional Displayable name of this spectrum.", - "nullable": true - }, - "msLevel": { - "type": "integer", - "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", - "format": "int32", - "nullable": true - }, - "collisionEnergy": { - "type": "string", - "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", - "nullable": true - }, - "instrument": { - "type": "string", - "description": "Instrument information.", - "nullable": true - }, - "precursorMz": { - "type": "number", - "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", - "format": "double", - "nullable": true - }, - "scanNumber": { - "type": "integer", - "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", - "format": "int32", - "nullable": true - }, - "cosineQuery": { - "type": "boolean", - "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", - "default": false - }, - "precursorPeak": { - "$ref": "#/components/schemas/SimplePeak" - }, - "peaks": { - "type": "array", - "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", - "items": { - "$ref": "#/components/schemas/AnnotatedPeak" - } - }, - "absIntensityFactor": { - "type": "number", - "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", - "format": "double", - "nullable": true, - "deprecated": true - }, - "maxNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to MAX norm.", - "format": "double", - "nullable": true - }, - "sumNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to SUM norm.", - "format": "double", - "nullable": true - }, - "l2NormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", - "format": "double", - "nullable": true - }, - "firstPeakNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", - "format": "double", - "nullable": true - }, - "spectrumAnnotation": { - "$ref": "#/components/schemas/SpectrumAnnotation" - } - }, - "description": "Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes", - "nullable": true - }, - "CanopusPrediction": { - "type": "object", - "properties": { - "classyFireClasses": { - "type": "array", - "description": "All predicted ClassyFire classes", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - }, - "npcClasses": { - "type": "array", - "description": "All predicted NPC classes", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - } - }, - "description": "Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.", - "nullable": true - }, - "Compound": { - "type": "object", - "properties": { - "compoundId": { - "type": "string", - "description": "uid of this compound Entity" - }, - "name": { - "type": "string", - "description": "Some (optional) human-readable name", - "nullable": true - }, - "rtStartSeconds": { - "type": "number", - "description": "The merged/consensus retention time start (earliest rt) of this compound", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "description": "The merged/consensus retention time end (latest rt) of this compound", - "format": "double", - "nullable": true - }, - "neutralMass": { - "type": "number", - "description": "Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass", - "format": "double", - "nullable": true - }, - "features": { - "type": "array", - "description": "List of aligned features (adducts) that belong to the same (this) compound", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - }, - "consensusAnnotations": { - "$ref": "#/components/schemas/ConsensusAnnotationsCSI" - }, - "consensusAnnotationsDeNovo": { - "$ref": "#/components/schemas/ConsensusAnnotationsDeNovo" - }, - "customAnnotations": { - "$ref": "#/components/schemas/ConsensusAnnotationsCSI" - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - } - }, - "CompoundClass": { - "type": "object", - "properties": { - "type": { - "$ref": "#/components/schemas/CompoundClassType" - }, - "level": { - "type": "string", - "description": "Name of the level this compound class belongs to", - "nullable": true - }, - "levelIndex": { - "type": "integer", - "description": "Index of the level this compound class belongs to", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "description": "Name of the compound class.", - "nullable": true - }, - "description": { - "type": "string", - "description": "Description of the compound class.", - "nullable": true - }, - "id": { - "type": "integer", - "description": "Unique id of the class. Might be undefined for certain classification ontologies.", - "format": "int32", - "nullable": true - }, - "probability": { - "type": "number", - "description": "prediction probability", - "format": "double" - }, - "index": { - "type": "integer", - "description": "Absolute index of this property in the predicted vector/embedding", - "format": "int32" - }, - "parentId": { - "type": "integer", - "description": "Unique id of the parent class. Might be undefined for certain classification ontologies.", - "format": "int32", - "nullable": true - }, - "parentName": { - "type": "string", - "description": "Name of the parent compound class.", - "nullable": true - } - }, - "description": "Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to", - "nullable": true - }, - "CompoundClassType": { - "type": "string", - "description": "Defines compound class ontologies that are available.", - "nullable": true, - "enum": [ - "ClassyFire", - "NPC" - ] - }, - "CompoundClasses": { - "type": "object", - "properties": { - "npcPathway": { - "$ref": "#/components/schemas/CompoundClass" - }, - "npcSuperclass": { - "$ref": "#/components/schemas/CompoundClass" - }, - "npcClass": { - "$ref": "#/components/schemas/CompoundClass" - }, - "classyFireLineage": { - "type": "array", - "description": "Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - }, - "classyFireAlternatives": { - "type": "array", - "description": "Alternative ClassyFire classes with high probability that do not fit into the linage", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - } - }, - "description": "Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.", - "nullable": true - }, - "ComputedSubtools": { - "type": "object", - "properties": { - "librarySearch": { - "type": "boolean" - }, - "formulaSearch": { - "type": "boolean" - }, - "zodiac": { - "type": "boolean" - }, - "fingerprint": { - "type": "boolean" - }, - "canopus": { - "type": "boolean" - }, - "structureSearch": { - "type": "boolean" - }, - "deNovoSearch": { - "type": "boolean" - } - }, - "description": "Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.", - "nullable": true - }, - "ConsensusAnnotationsCSI": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", - "nullable": true - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "supportingFeatureIds": { - "type": "array", - "description": "FeatureIds where the topAnnotation supports this annotation.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "selectionCriterion": { - "$ref": "#/components/schemas/ConsensusCriterionCSI" - }, - "csiFingerIdStructure": { - "$ref": "#/components/schemas/StructureCandidate" - }, - "confidenceExactMatch": { - "type": "number", - "description": "Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported", - "format": "double", - "nullable": true - }, - "confidenceApproxMatch": { - "type": "number", - "description": "Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "ConsensusAnnotationsDeNovo": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", - "nullable": true - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "supportingFeatureIds": { - "type": "array", - "description": "FeatureIds where the topAnnotation supports this annotation.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "selectionCriterion": { - "$ref": "#/components/schemas/ConsensusCriterionDeNovo" - } - }, - "nullable": true - }, - "ConsensusCriterionCSI": { - "type": "string", - "nullable": true, - "enum": [ - "MAJORITY_STRUCTURE", - "CONFIDENCE_STRUCTURE", - "SINGLETON_STRUCTURE", - "MAJORITY_FORMULA", - "TOP_FORMULA", - "SINGLETON_FORMULA" - ] - }, - "ConsensusCriterionDeNovo": { - "type": "string", - "nullable": true, - "enum": [ - "MAJORITY_FORMULA", - "TOP_FORMULA", - "SINGLETON_FORMULA" - ] - }, - "FeatureAnnotations": { - "type": "object", - "properties": { - "formulaAnnotation": { - "$ref": "#/components/schemas/FormulaCandidate" - }, - "structureAnnotation": { - "$ref": "#/components/schemas/StructureCandidateScored" - }, - "compoundClassAnnotation": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "confidenceExactMatch": { - "type": "number", - "description": "Confidence Score that represents the confidence whether the top hit is correct.", - "format": "double", - "nullable": true - }, - "confidenceApproxMatch": { - "type": "number", - "description": "Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.", - "format": "double", - "nullable": true - }, - "expansiveSearchState": { - "$ref": "#/components/schemas/ConfidenceMode" - }, - "specifiedDatabases": { - "type": "array", - "description": "List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "expandedDatabases": { - "type": "array", - "description": "List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - } - }, - "description": "Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.", - "nullable": true - }, - "FormulaCandidate": { - "type": "object", - "properties": { - "formulaId": { - "type": "string", - "description": "Unique identifier of this formula candidate" - }, - "molecularFormula": { - "type": "string", - "description": "molecular formula of this formula candidate" - }, - "adduct": { - "type": "string", - "description": "Adduct of this formula candidate" - }, - "rank": { - "type": "integer", - "format": "int32" - }, - "siriusScoreNormalized": { - "type": "number", - "description": "Normalized Sirius Score of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "siriusScore": { - "type": "number", - "description": "Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "isotopeScore": { - "type": "number", - "format": "double", - "nullable": true - }, - "treeScore": { - "type": "number", - "format": "double", - "nullable": true - }, - "zodiacScore": { - "type": "number", - "description": "Zodiac Score of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "numOfExplainedPeaks": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "numOfExplainablePeaks": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "totalExplainedIntensity": { - "type": "number", - "format": "double", - "nullable": true - }, - "medianMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "fragmentationTree": { - "$ref": "#/components/schemas/FragmentationTree" - }, - "annotatedSpectrum": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - }, - "isotopePatternAnnotation": { - "$ref": "#/components/schemas/IsotopePatternAnnotation" - }, - "lipidAnnotation": { - "$ref": "#/components/schemas/LipidAnnotation" - }, - "predictedFingerprint": { - "type": "array", - "description": "Probabilistic molecular fingerprint predicted by CSI:FingerID", - "nullable": true, - "items": { - "type": "number", - "format": "double", - "nullable": true - } - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "canopusPrediction": { - "$ref": "#/components/schemas/CanopusPrediction" - } - }, - "description": "Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.", - "nullable": true - }, - "FragmentNode": { - "type": "object", - "properties": { - "fragmentId": { - "type": "integer", - "format": "int32" - }, - "molecularFormula": { - "type": "string", - "description": "neutral molecular formula of the fragment without adduct", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.", - "nullable": true - }, - "massDeviationDa": { - "type": "number", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "format": "double", - "nullable": true - }, - "score": { - "type": "number", - "format": "double", - "nullable": true - }, - "intensity": { - "type": "number", - "format": "double", - "nullable": true - }, - "mz": { - "type": "number", - "format": "double", - "nullable": true - } - } - }, - "FragmentationTree": { - "type": "object", - "properties": { - "fragments": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FragmentNode" - } - }, - "losses": { - "type": "array", - "items": { - "$ref": "#/components/schemas/LossEdge" - } - }, - "treeScore": { - "type": "number", - "format": "double" - }, - "molecularFormula": { - "type": "string" - }, - "adduct": { - "type": "string" - } - }, - "description": "Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation", - "nullable": true - }, - "IsotopePatternAnnotation": { - "type": "object", - "properties": { - "isotopePattern": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "simulatedPattern": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "nullable": true - }, - "LipidAnnotation": { - "type": "object", - "properties": { - "lipidSpecies": { - "type": "string", - "description": "Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.", - "nullable": true - }, - "lipidMapsId": { - "type": "string", - "description": "LIPID MAPS id of the predicted lipid class.", - "nullable": true - }, - "lipidClassName": { - "type": "string", - "description": "Human-readable name of the predicted lipid class.", - "nullable": true - }, - "hypotheticalStructure": { - "type": "string", - "description": "Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.", - "nullable": true - }, - "chainsUnknown": { - "type": "boolean", - "description": "True of the formula composition of the chains could not be determined from the MS/MS.", - "nullable": true - } - }, - "nullable": true - }, - "LossEdge": { - "type": "object", - "properties": { - "sourceFragmentIdx": { - "type": "integer", - "format": "int32" - }, - "targetFragmentIdx": { - "type": "integer", - "format": "int32" - }, - "molecularFormula": { - "type": "string" - }, - "score": { - "type": "number", - "format": "double" - } - } - }, - "MsData": { - "type": "object", - "properties": { - "isotopePattern": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "mergedMs1": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "mergedMs2": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "ms1Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "ms2Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - } - }, - "description": "The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar", - "nullable": true - }, - "ParentPeak": { - "required": [ - "lossFormula", - "parentFragmentId", - "parentIdx" - ], - "type": "object", - "properties": { - "parentIdx": { - "type": "integer", - "description": "Index to the parent peak connected by this loss in this particular spectrum", - "format": "int32" - }, - "parentFragmentId": { - "type": "integer", - "description": "Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", - "format": "int32" - }, - "lossFormula": { - "type": "string", - "description": "Molecular formula of the neutral loss that connects these two peaks." - } - }, - "description": "Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.", - "nullable": true - }, - "PeakAnnotation": { - "required": [ - "fragmentId" - ], - "type": "object", - "properties": { - "fragmentId": { - "type": "integer", - "description": "Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", - "format": "int32" - }, - "molecularFormula": { - "type": "string", - "description": "Molecular formula that has been annotated to this peak", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "Adduct that has been annotated to this peak", - "nullable": true - }, - "exactMass": { - "type": "number", - "description": "Exact mass of the annotated molecular formula and adduct", - "format": "double", - "nullable": true - }, - "massDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the measured peak mass in mDa", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the measured peak mass in ppm", - "format": "double", - "nullable": true - }, - "recalibratedMassDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa", - "format": "double", - "nullable": true - }, - "recalibratedMassDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the recalibrated peak mass in ppm", - "format": "double", - "nullable": true - }, - "parentPeak": { - "$ref": "#/components/schemas/ParentPeak" - }, - "substructureAtoms": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureBonds": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureBondsCut": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureScore": { - "type": "number", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.", - "format": "float", - "nullable": true - }, - "hydrogenRearrangements": { - "type": "integer", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.", - "format": "int32", - "nullable": true - } - }, - "nullable": true - }, - "SpectrumAnnotation": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula that has been annotated to this spectrum", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "Adduct that has been annotated to this spectrum", - "nullable": true - }, - "exactMass": { - "type": "number", - "description": "Exact mass based on the annotated molecular formula and ionization", - "format": "double", - "nullable": true - }, - "massDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm", - "format": "double", - "nullable": true - }, - "structureAnnotationSmiles": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationName": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationSvg": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationScore": { - "type": "number", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "StructureCandidate": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "StructureCandidateScored": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - }, - "rank": { - "type": "integer", - "description": "the overall rank of this candidate among all candidates of this feature", - "format": "int32" - }, - "csiScore": { - "type": "number", - "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", - "format": "double" - }, - "tanimotoSimilarity": { - "type": "number", - "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", - "format": "double", - "nullable": true - }, - "mcesDistToTopHit": { - "type": "number", - "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", - "format": "double", - "nullable": true - }, - "fingerprint": { - "$ref": "#/components/schemas/BinaryFingerprint" - } - }, - "nullable": true - }, - "StoredJobSubmission": { - "required": [ - "editable", - "jobSubmission", - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Unique name to identify this JobSubmission (job config)." - }, - "editable": { - "type": "boolean", - "description": "False for predefined configs which are not editable and not removable." - }, - "jobSubmission": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "BioTransformerParameters": { - "required": [ - "bioTransformerSequenceSteps", - "cyp450Mode", - "p2Mode" - ], - "type": "object", - "properties": { - "cyp450Mode": { - "$ref": "#/components/schemas/Cyp450Mode" - }, - "p2Mode": { - "$ref": "#/components/schemas/P2Mode" - }, - "useDB": { - "type": "boolean", - "description": "\"Specify if you want to enable the retrieving from database (HMDB) feature.\"", - "default": true - }, - "bioTransformerSequenceSteps": { - "type": "array", - "description": "Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).", - "items": { - "$ref": "#/components/schemas/BioTransformerSequenceStep" - } - } - } - }, - "BioTransformerSequenceStep": { - "type": "object", - "properties": { - "metabolicTransformation": { - "$ref": "#/components/schemas/MetabolicTransformation" - }, - "iterations": { - "type": "integer", - "format": "int32" - } - } - }, - "Cyp450Mode": { - "type": "string", - "nullable": true, - "default": "COMBINED", - "enum": [ - "RULE_BASED", - "CY_PRODUCT", - "COMBINED" - ] - }, - "MetabolicTransformation": { - "type": "string", - "enum": [ - "PHASE_1_CYP450", - "EC_BASED", - "PHASE_2", - "HUMAN_GUT", - "ALL_HUMAN", - "ABIOTIC", - "HUMAN_CUSTOM_MULTI" - ] - }, - "P2Mode": { - "type": "string", - "nullable": true, - "default": "BT_RULE_BASED", - "enum": [ - "BT_RULE_BASED", - "P2_RULE_ONLY", - "COMBINED_RULES" - ] - }, - "AccountCredentials": { - "type": "object", - "properties": { - "username": { - "type": "string", - "nullable": true - }, - "password": { - "type": "string", - "nullable": true - }, - "refreshToken": { - "type": "string", - "nullable": true - } - }, - "description": "Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service." - }, - "RunOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "tags" - ] - }, - "Run": { - "type": "object", - "properties": { - "runId": { - "type": "string", - "description": "Identifier" - }, - "name": { - "type": "string", - "description": "Informative, human-readable name of this run" - }, - "source": { - "type": "string", - "description": "Source location" - }, - "chromatography": { - "type": "string", - "nullable": true - }, - "ionization": { - "type": "string", - "nullable": true - }, - "fragmentation": { - "type": "string", - "nullable": true - }, - "massAnalyzers": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - } - }, - "PageMetadata": { - "type": "object", - "properties": { - "size": { - "type": "integer", - "format": "int64" - }, - "number": { - "type": "integer", - "format": "int64" - }, - "totalElements": { - "type": "integer", - "format": "int64" - }, - "totalPages": { - "type": "integer", - "format": "int64" - } - } - }, - "PagedModelRun": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Run" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelJob": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "AdductEdgeExperimental": { - "type": "object", - "properties": { - "mzDelta": { - "type": "number", - "format": "double" - }, - "annotation": { - "type": "string" - }, - "from": { - "type": "integer", - "format": "int32" - }, - "to": { - "type": "integer", - "format": "int32" - }, - "mergedCorrelation": { - "type": "number", - "format": "float" - }, - "representativeCorrelation": { - "type": "number", - "format": "float" - }, - "ms2cosine": { - "type": "number", - "format": "float" - }, - "pvalue": { - "type": "number", - "format": "float" - }, - "intensityRatioScore": { - "type": "number", - "format": "float" - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "AdductNetworkExperimental": { - "type": "object", - "properties": { - "nodes": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdductNodeExperimental" - } - }, - "edges": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdductEdgeExperimental" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "AdductNodeExperimental": { - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string" - }, - "mz": { - "type": "number", - "format": "double" - }, - "adductAnnotations": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "Axes": { - "type": "object", - "properties": { - "scanNumber": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - } - }, - "scanIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "retentionTimeInSeconds": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "TraceAnnotationExperimental": { - "type": "object", - "properties": { - "type": { - "$ref": "#/components/schemas/TraceAnnotationTypeExperimental" - }, - "description": { - "type": "string", - "nullable": true - }, - "index": { - "type": "integer", - "format": "int32" - }, - "from": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "to": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "TraceAnnotationTypeExperimental": { - "type": "string", - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.", - "enum": [ - "FEATURE", - "MS2" - ] - }, - "TraceExperimental": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "sampleId": { - "type": "string", - "nullable": true - }, - "sampleName": { - "type": "string", - "nullable": true - }, - "label": { - "type": "string" - }, - "color": { - "type": "string" - }, - "intensities": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - }, - "annotations": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TraceAnnotationExperimental" - } - }, - "mz": { - "type": "number", - "format": "double" - }, - "merged": { - "type": "boolean" - }, - "normalizationFactor": { - "type": "number", - "description": "Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.", - "format": "double" - }, - "noiseLevel": { - "type": "number", - "description": "The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.", - "format": "double" - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "TraceSetExperimental": { - "type": "object", - "properties": { - "adductNetwork": { - "$ref": "#/components/schemas/AdductNetworkExperimental" - }, - "sampleId": { - "type": "string" - }, - "sampleName": { - "type": "string" - }, - "axes": { - "$ref": "#/components/schemas/Axes" - }, - "traces": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TraceExperimental" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "QuantRowType": { - "type": "string", - "enum": [ - "FEATURES", - "COMPOUNDS" - ] - }, - "QuantTableExperimental": { - "type": "object", - "properties": { - "quantificationMeasure": { - "$ref": "#/components/schemas/QuantMeasure" - }, - "rowType": { - "$ref": "#/components/schemas/QuantRowType" - }, - "rowIds": { - "type": "array", - "nullable": true, - "items": { - "type": "integer", - "format": "int64", - "nullable": true - } - }, - "columnIds": { - "type": "array", - "nullable": true, - "items": { - "type": "integer", - "format": "int64", - "nullable": true - } - }, - "rowNames": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "columnNames": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "values": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "PagedModelCompound": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "FoldChange": { - "required": [ - "foldChange", - "objectId", - "quantType" - ], - "type": "object", - "properties": { - "leftGroup": { - "type": "string" - }, - "rightGroup": { - "type": "string" - }, - "aggregation": { - "$ref": "#/components/schemas/AggregationType" - }, - "quantification": { - "$ref": "#/components/schemas/QuantMeasure" - }, - "quantType": { - "$ref": "#/components/schemas/QuantRowType" - }, - "objectId": { - "type": "string" - }, - "foldChange": { - "type": "number", - "format": "double" - } - } - }, - "StatisticsTable": { - "type": "object", - "properties": { - "statisticsType": { - "$ref": "#/components/schemas/StatisticsType" - }, - "aggregationType": { - "$ref": "#/components/schemas/AggregationType" - }, - "quantificationMeasure": { - "$ref": "#/components/schemas/QuantMeasure" - }, - "rowType": { - "$ref": "#/components/schemas/QuantRowType" - }, - "rowIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnNames": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnLeftGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnRightGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "values": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - } - }, - "StatisticsType": { - "type": "string", - "enum": [ - "FOLD_CHANGE" - ] - }, - "SpectralLibraryMatchOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "referenceSpectrum" - ] - }, - "SpectralLibraryMatchSummary": { - "required": [ - "databaseCompoundCount", - "referenceSpectraCount", - "spectralMatchCount" - ], - "type": "object", - "properties": { - "bestMatch": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - }, - "spectralMatchCount": { - "type": "integer", - "format": "int64" - }, - "referenceSpectraCount": { - "type": "integer", - "format": "int32" - }, - "databaseCompoundCount": { - "type": "integer", - "format": "int32" - } - } - }, - "PagedModelSpectralLibraryMatch": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "AlignedFeatureQualityExperimental": { - "required": [ - "alignedFeatureId", - "categories", - "overallQuality" - ], - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string", - "description": "Id of the feature (aligned over runs) this quality information belongs to." - }, - "overallQuality": { - "$ref": "#/components/schemas/DataQuality" - }, - "categories": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Category" - }, - "description": "Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.," - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "Category": { - "type": "object", - "properties": { - "categoryName": { - "type": "string" - }, - "overallQuality": { - "$ref": "#/components/schemas/DataQuality" - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QualityItem" - } - } - } - }, - "QualityItem": { - "type": "object", - "properties": { - "description": { - "type": "string" - }, - "quality": { - "$ref": "#/components/schemas/DataQuality" - }, - "weight": { - "$ref": "#/components/schemas/QualityWeight" - } - } - }, - "QualityWeight": { - "type": "string", - "enum": [ - "MINOR", - "MAJOR", - "CRITICAL" - ] - }, - "FormulaCandidateOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "statistics", - "fragmentationTree", - "annotatedSpectrum", - "isotopePattern", - "lipidAnnotation", - "predictedFingerprint", - "compoundClasses", - "canopusPredictions" - ] - }, - "AnnotatedMsMsData": { - "required": [ - "mergedMs2", - "ms2Spectra" - ], - "type": "object", - "properties": { - "mergedMs2": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - }, - "ms2Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - }, - "StructureCandidateOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "PagedModelStructureCandidateScored": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelFormulaCandidate": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidate" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelStructureCandidateFormula": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelAlignedFeature": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "Info": { - "required": [ - "availableILPSolvers", - "supportedILPSolvers" - ], - "type": "object", - "properties": { - "nightSkyApiVersion": { - "type": "string", - "description": "API version of the SIRIUS Nightsky API", - "nullable": true - }, - "siriusVersion": { - "type": "string", - "description": "Version of the SIRIUS application", - "nullable": true - }, - "latestSiriusVersion": { - "type": "string", - "description": "Latest available Version of the SIRIUS application", - "nullable": true - }, - "latestSiriusLink": { - "type": "string", - "description": "Link to the latest available Version of the SIRIUS application", - "nullable": true - }, - "updateAvailable": { - "type": "boolean", - "description": "true if newer SIRIUS version is available" - }, - "siriusLibVersion": { - "type": "string", - "description": "Version of the SIRIUS libraries", - "nullable": true - }, - "fingerIdLibVersion": { - "type": "string", - "description": "Version of the CSI:FingerID libraries", - "nullable": true - }, - "chemDbVersion": { - "type": "string", - "description": "Version of the Chemical Database available via SIRIUS web services", - "nullable": true - }, - "fingerIdModelVersion": { - "type": "string", - "description": "Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.", - "nullable": true - }, - "fingerprintId": { - "type": "string", - "description": "Version of the Molecular Fingerprint used by SIRIUS", - "nullable": true - }, - "availableILPSolvers": { - "type": "array", - "description": "Set of solvers that are configured correctly and can be loaded", - "items": { - "$ref": "#/components/schemas/Solver" - } - }, - "supportedILPSolvers": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Set of ILP Solvers that are Supported and their version information" - } - } - }, - "Solver": { - "type": "string", - "enum": [ - "GUROBI", - "CPLEX", - "GLPK", - "CLP" - ] - }, - "ConnectionCheck": { - "required": [ - "errors", - "licenseInfo" - ], - "type": "object", - "properties": { - "licenseInfo": { - "$ref": "#/components/schemas/LicenseInfo" - }, - "errors": { - "type": "array", - "description": "List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors", - "items": { - "$ref": "#/components/schemas/ConnectionError" - } - } - } - }, - "ConnectionError": { - "required": [ - "errorKlass", - "errorType", - "siriusErrorCode", - "siriusMessage" - ], - "type": "object", - "properties": { - "errorType": { - "$ref": "#/components/schemas/ConnectionErrorType" - }, - "errorKlass": { - "$ref": "#/components/schemas/ConnectionErrorClass" - }, - "siriusErrorCode": { - "type": "integer", - "format": "int32" - }, - "siriusMessage": { - "type": "string" - }, - "serverResponseErrorCode": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "serverResponseErrorMessage": { - "type": "string", - "nullable": true - }, - "error": { - "type": "boolean" - }, - "warning": { - "type": "boolean" - } - } - }, - "ConnectionErrorClass": { - "type": "string", - "enum": [ - "UNKNOWN", - "INTERNET", - "LOGIN_SERVER", - "LICENSE_SERVER", - "TOKEN", - "LOGIN", - "LICENSE", - "TERMS", - "APP_SERVER" - ] - }, - "ConnectionErrorType": { - "type": "string", - "enum": [ - "WARNING", - "ERROR" - ] - }, - "LicenseInfo": { - "type": "object", - "properties": { - "userEmail": { - "type": "string", - "description": "Email address of the user account this license information belongs to.", - "nullable": true - }, - "userId": { - "type": "string", - "description": "User ID (uid) of the user account this license information belongs to.", - "nullable": true - }, - "subscription": { - "$ref": "#/components/schemas/Subscription" - }, - "consumables": { - "$ref": "#/components/schemas/SubscriptionConsumables" - }, - "terms": { - "type": "array", - "nullable": true, - "items": { - "$ref": "#/components/schemas/Term" - } - } - } - }, - "SubscriptionConsumables": { - "type": "object", - "properties": { - "pendingJobs": { - "type": "integer", - "format": "int32" - }, - "countedCompounds": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "Term": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "link": { - "type": "string", - "format": "uri" - } - }, - "nullable": true - }, - "ApiVersion": { - "type": "string", - "enum": [ - "V2", - "V3" - ] - }, - "WebServerNamespace": { - "type": "object", - "properties": { - "value": { - "type": "string" - } - } - }, - "SecurityContext": { - "type": "object", - "properties": { - "principal": { - "type": "object", - "properties": { - "name": { - "type": "string" - } - } - } - } - } - } - } -} \ No newline at end of file +{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"$ref":"#/components/schemas/ProjectEventType"},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectEventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"ProjectInfoOptField":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"$ref":"#/components/schemas/ProjectType"},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"ProjectType":{"type":"string","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"ValueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"JobOptField":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"$ref":"#/components/schemas/JobEffect"}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobEffect":{"type":"string","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"$ref":"#/components/schemas/JobState"},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"JobState":{"type":"string","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"AggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"QuantMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"$ref":"#/components/schemas/SpectralMatchType"},"inchiKey":{"type":"string"},"referenceSpectrumType":{"$ref":"#/components/schemas/SpectrumType"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"$ref":"#/components/schemas/SpectrumType"}},"nullable":true},"SpectralMatchType":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"SpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"ConfidenceMode":{"type":"string","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"InstrumentProfile":{"type":"string","description":"Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.","nullable":true,"enum":["QTOF","ORBITRAP"]},"IsotopeMs2Strategy":{"type":"string","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"$ref":"#/components/schemas/InstrumentProfile"},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"$ref":"#/components/schemas/IsotopeMs2Strategy"},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType"},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"SpectralMatchingType":{"type":"string","nullable":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"$ref":"#/components/schemas/ConfidenceMode"}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"DataQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"$ref":"#/components/schemas/DataQuality"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"CompoundOptField":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"AlignedFeatureOptField":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"$ref":"#/components/schemas/DataQuality"},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/CompoundClassType"},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClassType":{"type":"string","description":"Defines compound class ontologies that are available.","nullable":true,"enum":["ClassyFire","NPC"]},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionCSI"},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionDeNovo"}},"nullable":true},"ConsensusCriterionCSI":{"type":"string","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"ConsensusCriterionDeNovo":{"type":"string","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"$ref":"#/components/schemas/ConfidenceMode"},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"$ref":"#/components/schemas/Cyp450Mode"},"p2Mode":{"$ref":"#/components/schemas/P2Mode"},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"$ref":"#/components/schemas/MetabolicTransformation"},"iterations":{"type":"integer","format":"int32"}}},"Cyp450Mode":{"type":"string","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"MetabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"P2Mode":{"type":"string","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/TraceAnnotationTypeExperimental"},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceAnnotationTypeExperimental":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantRowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"$ref":"#/components/schemas/AggregationType"},"quantification":{"$ref":"#/components/schemas/QuantMeasure"},"quantType":{"$ref":"#/components/schemas/QuantRowType"},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"$ref":"#/components/schemas/StatisticsType"},"aggregationType":{"$ref":"#/components/schemas/AggregationType"},"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"StatisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"SpectralLibraryMatchOptField":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"$ref":"#/components/schemas/DataQuality"},"weight":{"$ref":"#/components/schemas/QualityWeight"}}},"QualityWeight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]},"FormulaCandidateOptField":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"StructureCandidateOptField":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"$ref":"#/components/schemas/Solver"}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"Solver":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"$ref":"#/components/schemas/ConnectionErrorType"},"errorKlass":{"$ref":"#/components/schemas/ConnectionErrorClass"},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"ConnectionErrorClass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"ConnectionErrorType":{"type":"string","enum":["WARNING","ERROR"]},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"ApiVersion":{"type":"string","enum":["V2","V3"]},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file diff --git a/.updater/api/api-docs-strings.json b/.updater/api/api-docs-strings.json index 16d1f54e..aea02c51 100644 --- a/.updater/api/api-docs-strings.json +++ b/.updater/api/api-docs-strings.json @@ -1,11574 +1 @@ -{ - "openapi": "3.0.1", - "info": { - "title": "SIRIUS Nightsky API", - "description": "REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6", - "version": "3.1" - }, - "servers": [ - { - "url": "http://localhost:8080", - "description": "Generated server url" - } - ], - "tags": [ - { - "name": "Tags", - "description": "[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Info", - "description": "Status und Information" - }, - { - "name": "Feature Statistics", - "description": "[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Jobs", - "description": "Start, monitor and cancel background jobs." - }, - { - "name": "Compounds", - "description": "This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)" - }, - { - "name": "Login and Account", - "description": "Perform signIn, signOut and signUp. Get tokens and account information." - }, - { - "name": "Actuator", - "description": "Monitor and interact", - "externalDocs": { - "description": "Spring Boot Actuator Web API Documentation", - "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" - } - }, - { - "name": "Searchable Databases", - "description": "Manage structure and spectral databases that can be used by various computational methods." - }, - { - "name": "Features", - "description": "This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries." - }, - { - "name": "Projects", - "description": "Manage SIRIUS projects." - }, - { - "name": "Runs", - "description": "[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - }, - { - "name": "Compound Statistics", - "description": "[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." - } - ], - "paths": { - "/api/projects/{projectId}": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get project space info by its projectId.", - "description": "Get project space info by its projectId.", - "operationId": "getProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier tof the project-space to be accessed.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "compatibilityInfo", - "sizeInformation" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "put": { - "tags": [ - "Projects" - ], - "summary": "Open an existing project-space and make it accessible via the given projectId.", - "description": "Open an existing project-space and make it accessible via the given projectId.", - "operationId": "openProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pathToProject", - "in": "query", - "description": "local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", - "required": false, - "deprecated": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "compatibilityInfo", - "sizeInformation" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "post": { - "tags": [ - "Projects" - ], - "summary": "Create and open a new project-space at given location and make it accessible via the given projectId.", - "description": "Create and open a new project-space at given location and make it accessible via the given projectId.", - "operationId": "createProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pathToProject", - "in": "query", - "description": "local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", - "required": false, - "deprecated": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "compatibilityInfo", - "sizeInformation" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Projects" - ], - "summary": "Close project-space and remove it from the application", - "description": "Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.", - "operationId": "closeProject", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "unique name/identifier of the project-space to be closed.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compact", - "in": "query", - "description": "if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.", - "required": false, - "deprecated": true, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/tags": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get all tag definitions in the given project-space", - "description": "[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTags", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagType", - "in": "query", - "description": "scope of the tag (optional)", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag definitions.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Add tags to the project", - "description": "[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "createTags", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "the tag definitions to be created", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinitionImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the definitions of the tags that have been created", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{runId}": { - "put": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Add tags to a run in the project", - "description": "[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "run to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/blanksubtract/compute": { - "put": { - "tags": [ - "Runs" - ], - "summary": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter", - "description": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

", - "operationId": "computeFoldChangeForBlankSubtraction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "description": "request with lists of run IDs that are sample, blank, and control runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SampleTypeFoldChangeRequest" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{compoundId}": { - "put": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Tags with the same name will be overwritten", - "description": "[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound (group of ion identities) to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchange/compute": { - "put": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", - "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "computeCompoundFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - }, - "put": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.", - "description": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.", - "operationId": "addDeNovoStructureCandidate", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "smiles", - "in": "query", - "description": "smiles", - "required": false, - "schema": { - "type": "string", - "default": "none" - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}": { - "put": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project", - "description": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addTagsToAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "run to add tags to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "description": "tags to add.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the tags that have been added", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchange/compute": { - "put": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", - "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "computeAlignedFeatureFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to compute the fold change in.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right tag group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - }, - { - "name": "optFields", - "in": "query", - "description": "job opt fields.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/delete": { - "put": { - "tags": [ - "Features" - ], - "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "deleteAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/databases/{databaseId}": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "put": { - "tags": [ - "Searchable Databases" - ], - "operationId": "updateDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabaseParameters" - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "post": { - "tags": [ - "Searchable Databases" - ], - "operationId": "createDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "pattern": "^[a-zA-Z0-9-_]+$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabaseParameters" - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Searchable Databases" - ], - "operationId": "removeDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "delete", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/subscriptions/select-active": { - "put": { - "tags": [ - "Login and Account" - ], - "summary": "Select a subscription as active subscription to be used for computations.", - "description": "Select a subscription as active subscription to be used for computations.", - "operationId": "selectSubscription", - "parameters": [ - { - "name": "sid", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Account information with updated active subscription", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/jobs": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get List of all available jobs with information such as current state and progress (if available).", - "description": "Get List of all available jobs with information such as current state and progress (if available).", - "operationId": "getJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Jobs" - ], - "summary": "Start computation for given compounds and with given parameters.", - "description": "Start computation for given compounds and with given parameters.", - "operationId": "startJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "command", - "progress" - ] - } - } - ], - "requestBody": { - "description": "configuration of the job that will be submitted of the job to be returned", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "* Delete ALL jobs.", - "description": "* Delete ALL jobs. Specify how to behave for running jobs.", - "operationId": "deleteJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete jobs from", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "cancelIfRunning", - "in": "query", - "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "awaitDeletion", - "in": "query", - "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/projects/{projectId}/jobs/from-config": { - "post": { - "tags": [ - "Jobs" - ], - "summary": "Start computation for given compounds and with parameters from a stored job-config.", - "description": "Start computation for given compounds and with parameters from a stored job-config.", - "operationId": "startJobFromConfig", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobConfigName", - "in": "query", - "description": "name if the config to be used", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "recompute", - "in": "query", - "description": "enable or disable recompute. If null the stored value will be used.", - "required": false, - "schema": { - "type": "boolean" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "command", - "progress" - ] - } - } - ], - "requestBody": { - "description": "List of alignedFeatureIds to be computed", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/preprocessed-data-files": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", - "description": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", - "operationId": "importPreprocessedData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ignoreFormulas", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "allowMs1Only", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "files to import into project", - "items": { - "type": "string", - "format": "binary" - } - } - } - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImportResult" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/preprocessed-data-files-job": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import ms/ms data from the given format into the specified project-space as background job.", - "description": "Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)", - "operationId": "importPreprocessedDataAsJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ignoreFormulas", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "allowMs1Only", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "items": { - "type": "string", - "format": "binary" - } - } - } - } - } - } - }, - "responses": { - "200": { - "description": "the import job.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/ms-data-files": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", - "description": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", - "operationId": "importMsRunData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "Project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles", - "parameters" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "Files to import into project.", - "items": { - "type": "string", - "format": "binary" - } - }, - "parameters": { - "$ref": "#/components/schemas/LcmsSubmissionParameters" - } - } - }, - "encoding": { - "parameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ImportResult" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/import/ms-data-files-job": { - "post": { - "tags": [ - "Projects" - ], - "summary": "Import and Align full MS-Runs from various formats into the specified project as background job.", - "description": "Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)", - "operationId": "importMsRunDataAsJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "Project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "Set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles", - "parameters" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "Files to import into project.", - "items": { - "type": "string", - "format": "binary" - } - }, - "parameters": { - "$ref": "#/components/schemas/LcmsSubmissionParameters" - } - } - }, - "encoding": { - "parameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "the import job.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/groups/{groupName}": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get tag group by name in the given project-space", - "description": "[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getGroupByName", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of the group", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag group.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - }, - "post": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Group tags in the project", - "description": "[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addGroup", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of the new group", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "filter query to create the group", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "type of the group", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tag group that was added", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space", - "description": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteGroup", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "path", - "description": "name of group to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "List of all available compounds (group of ion identities) in the given project-space.", - "description": "List of all available compounds (group of ion identities) in the given project-space.", - "operationId": "getCompounds", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Compounds" - ], - "summary": "Import Compounds and its contained features.", - "description": "Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.", - "operationId": "addCompounds", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "profile", - "in": "query", - "description": "profile describing the instrument used to measure the data. Used to merge spectra.", - "required": false, - "schema": { - "type": "string", - "nullable": true, - "enum": [ - "QTOF", - "ORBITRAP" - ] - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "description": "set of optional fields of the nested features to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "requestBody": { - "description": "the compound data to be imported", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CompoundImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the Compounds that have been imported with specified optional fields", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get all available features (aligned over runs) in the given project-space.", - "description": "Get all available features (aligned over runs) in the given project-space.", - "operationId": "getAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Features" - ], - "summary": "Import (aligned) features into the project.", - "description": "Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.", - "operationId": "addAlignedFeatures", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to import into.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "profile", - "in": "query", - "description": "profile describing the instrument used to measure the data. Used to merge spectra.", - "required": false, - "schema": { - "type": "string", - "nullable": true, - "enum": [ - "QTOF", - "ORBITRAP" - ] - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "requestBody": { - "description": "the feature data to be imported", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FeatureImport" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the Features that have been imported with specified optional fields", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - } - } - }, - "/api/job-configs/{name}": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request job configuration with given name.", - "description": "Request job configuration with given name.", - "operationId": "getJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to return", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "{@link JobSubmission JobSubmission} for given name.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - }, - "post": { - "tags": [ - "Jobs" - ], - "summary": "Add new job configuration with given name.", - "description": "Add new job configuration with given name.", - "operationId": "saveJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to add", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "overrideExisting", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "requestBody": { - "description": "to add", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "Delete job configuration with given name.", - "description": "Delete job configuration with given name.", - "operationId": "deleteJobConfig", - "parameters": [ - { - "name": "name", - "in": "path", - "description": "name of the job-config to delete", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/job-configs/get-command": { - "post": { - "tags": [ - "Jobs" - ], - "summary": "Get a CLI command for the given job configuration.", - "description": "Get a CLI command for the given job configuration.", - "operationId": "getCommand", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - } - }, - "/api/databases": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeWithErrors", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - }, - "post": { - "tags": [ - "Searchable Databases" - ], - "summary": "DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.", - "operationId": "addDatabases", - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - }, - "deprecated": true - } - }, - "/api/databases/{databaseId}/import/from-files": { - "post": { - "tags": [ - "Searchable Databases" - ], - "summary": "Start import of structure and spectra files into the specified database.", - "description": "Start import of structure and spectra files into the specified database.", - "operationId": "importIntoDatabase", - "parameters": [ - { - "name": "databaseId", - "in": "path", - "description": "database to import into", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "bufferSize", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1000 - } - } - ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "inputFiles" - ], - "type": "object", - "properties": { - "inputFiles": { - "type": "array", - "description": "files to be imported", - "items": { - "type": "string", - "format": "binary" - } - }, - "bioTransformerParameters": { - "$ref": "#/components/schemas/BioTransformerParameters" - } - } - }, - "encoding": { - "bioTransformerParameters": { - "contentType": "application/json" - }, - "inputFiles": { - "contentType": "application/octet-stream" - } - } - } - } - }, - "responses": { - "200": { - "description": "Meta-Information of the affected database after the import has been performed.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - }, - "/api/account/logout": { - "post": { - "tags": [ - "Login and Account" - ], - "summary": "Logout from SIRIUS web services.", - "description": "Logout from SIRIUS web services.", - "operationId": "logout", - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/login": { - "post": { - "tags": [ - "Login and Account" - ], - "summary": "Login into SIRIUS web services and activate default subscription if available.", - "description": "Login into SIRIUS web services and activate default subscription if available.", - "operationId": "login", - "parameters": [ - { - "name": "acceptTerms", - "in": "query", - "required": true, - "schema": { - "type": "boolean" - } - }, - { - "name": "failWhenLoggedIn", - "in": "query", - "description": "if true request fails if an active login already exists.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeSubs", - "in": "query", - "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "requestBody": { - "description": "used to log in.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountCredentials" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Basic information about the account that has been logged in and its subscriptions.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/actuator/shutdown": { - "post": { - "tags": [ - "Actuator" - ], - "summary": "Actuator web endpoint 'shutdown'", - "operationId": "shutdown", - "responses": { - "204": { - "description": "No Content" - }, - "400": { - "description": "Bad Request" - } - } - } - }, - "/api/projects/{projectId}/tags/{tagName}": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get tag definition by its name in the given project-space", - "description": "[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTag", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Tag definition.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space", - "description": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteTag", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag definition to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - }, - "patch": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Add a possible value to the tag definition in the project", - "description": "[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "addPossibleValuesToTagDefinition", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to add to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "the tag definition to add the values to", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "object" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "the definitions of the tags that have been added", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TagDefinition" - } - } - } - } - } - } - }, - "/api/projects": { - "get": { - "tags": [ - "Projects" - ], - "summary": "List opened project spaces.", - "description": "List opened project spaces.", - "operationId": "getProjects", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectInfo" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/{runId}": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space", - "description": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "identifier of run to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "Run with tags (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Run" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{objectId}": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Run", - "description": "[EXPERIMENTAL] Get all tags associated with this Run", - "operationId": "getTagsForRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "RunId to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested object", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tagged": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get runs by tag", - "description": "[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunsByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get runs from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/page": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get all available runs in the given project-space", - "description": "[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunPageExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "Runs with tags (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/grouped": { - "get": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Get runs by tag group", - "description": "[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getRunsByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RunOptField" - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged runs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelRun" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/npc-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CANOPUS prediction vector definition for NPC classes", - "operationId": "getCanopusNpcData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/jobs/{jobId}": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get job information and its current state and progress (if available).", - "description": "Get job information and its current state and progress (if available).", - "operationId": "getJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobId", - "in": "path", - "description": "of the job to be returned", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "progress" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Job" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Jobs" - ], - "summary": "Delete job.", - "description": "Delete job. Specify how to behave for running jobs.", - "operationId": "deleteJob", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete job from", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "jobId", - "in": "path", - "description": "of the job to be deleted", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "cancelIfRunning", - "in": "query", - "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "awaitDeletion", - "in": "query", - "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "202": { - "description": "Accepted" - } - } - } - }, - "/api/projects/{projectId}/jobs/page": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Get Page of jobs with information such as current state and progress (if available).", - "description": "Get Page of jobs with information such as current state and progress (if available).", - "operationId": "getJobsPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to run jobs on", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "command", - "progress", - "affectedIds" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelJob" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/has-jobs": { - "get": { - "tags": [ - "Jobs" - ], - "operationId": "hasJobs", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeFinished", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "boolean" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/groups": { - "get": { - "tags": [ - "Tags" - ], - "summary": "[EXPERIMENTAL] Get all tag based groups in the given project-space", - "description": "[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getGroups", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupType", - "in": "query", - "description": "type of the group", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Groups.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TagGroup" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/fingerid-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CSI:FingerID fingerprint (prediction vector) definition", - "operationId": "getFingerIdData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "Get compound (group of ion identities) with the given identifier from the specified project-space.", - "description": "Get compound (group of ion identities) with the given identifier from the specified project-space.", - "operationId": "getCompound", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "identifier of the compound (group of ion identities) to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Compound" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Compounds" - ], - "summary": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", - "description": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", - "operationId": "deleteCompound", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "identifier of the compound to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}/traces": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns the traces of the given compound", - "description": "[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound which intensities should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "featureId", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "Traces of the given compound.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/{compoundId}/quant-table-row": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given compound", - "description": "[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundQuantTableRowExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound which should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_HEIGHT", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{objectId}": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Compound", - "description": "[EXPERIMENTAL] Get all tags associated with this Compound", - "operationId": "getTagsForCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "CompoundId to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested Compound", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/tagged": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag", - "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundsByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get compounds (group of ion identities) from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged compounds (group of ion identities)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}": { - "get": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", - "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFoldChangesByCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "id of the object the fold changes are assigned to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "fold changes", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FoldChange" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table": { - "get": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", - "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundFoldChangeTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "table of fold changes.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsTable" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/quant-table": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Returns the full quantification table of compounds", - "description": "[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", - "operationId": "getCompoundQuantTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_HEIGHT", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/page": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "Page of available compounds (group of ion identities) in the given project-space.", - "description": "Page of available compounds (group of ion identities) in the given project-space.", - "operationId": "getCompoundsPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [ - "none" - ] - } - }, - { - "name": "optFieldsFeatures", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Compounds with additional optional fields (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/compounds/grouped": { - "get": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group", - "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getCompoundsByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "consensusAnnotations", - "consensusAnnotationsDeNovo", - "customAnnotations", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged compounds (group of ion identities)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelCompound" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/cf-data": { - "get": { - "tags": [ - "Projects" - ], - "summary": "Get CANOPUS prediction vector definition for ClassyFire classes", - "operationId": "getCanopusClassyFireData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "charge", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/csv": { - "schema": { - "type": "string" - } - }, - "application/CSV": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Get feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "getAlignedFeature", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to access.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeature with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AlignedFeature" - } - } - } - } - } - }, - "delete": { - "tags": [ - "Features" - ], - "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", - "operationId": "deleteAlignedFeature", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature which intensities should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "includeAll", - "in": "query", - "description": "when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Traces of the given feature.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of spectral library matches for the given 'alignedFeatureId'.", - "description": "List of spectral library matches for the given 'alignedFeatureId'.", - "operationId": "getSpectralLibraryMatches", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "referenceSpectrum" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library matches of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "Spectral library match for the given 'alignedFeatureId'.", - "description": "Spectral library match for the given 'alignedFeatureId'.", - "operationId": "getSpectralLibraryMatch", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "matchId", - "in": "path", - "description": "id of the library match to be returned.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "referenceSpectrum" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library match with requested mathcId.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations", - "description": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedSpectralLibraryMatchExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "matchId", - "in": "path", - "description": "id of the library match to be returned.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Spectral library match with requested mathcId.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary": { - "get": { - "tags": [ - "Features" - ], - "summary": "Summarize matched reference spectra for the given 'alignedFeatureId'.", - "description": "Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.", - "operationId": "getSpectralLibraryMatchesSummary", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "description": "min threshold of shared peaks.", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "description": "min spectral similarity threshold.", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "description": "2D inchi key of the compound in the structure database.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - } - ], - "responses": { - "200": { - "description": "Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SpectralLibraryMatchSummary" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of spectral library matches for the given 'alignedFeatureId'.", - "description": "Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.", - "operationId": "getSpectralLibraryMatchesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "minSharedPeaks", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "name": "minSimilarity", - "in": "query", - "required": false, - "schema": { - "type": "number", - "format": "double", - "default": 0.2 - } - }, - { - "name": "inchiKey", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "optFields", - "in": "query", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "referenceSpectrum" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "Spectral library matches of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelSpectralLibraryMatch" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getQuantTableRowExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature which quantity should be read out", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_HEIGHT", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "Quant table row for this feature", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ", - "description": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeatureQualityExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "identifier of feature (aligned over runs) to access.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatureQuality quality information of the respective feature.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AlignedFeatureQualityExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data": { - "get": { - "tags": [ - "Features" - ], - "summary": "Mass Spec data (input data) for the given 'alignedFeatureId' .", - "description": "Mass Spec data (input data) for the given 'alignedFeatureId' .", - "operationId": "getMsData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the Mass Spec data belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Mass Spec data of this feature (aligned over runs).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/MsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of FormulaResultContainers available for this feature with minimal information.", - "description": "List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", - "operationId": "getFormulaCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "statistics", - "fragmentationTree", - "annotatedSpectrum", - "isotopePattern", - "lipidAnnotation", - "predictedFingerprint", - "compoundClasses", - "canopusPredictions" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "All FormulaCandidate of this feature with.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidate" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "FormulaResultContainers for the given 'formulaId' with minimal information.", - "description": "FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.", - "operationId": "getFormulaCandidate", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "statistics", - "fragmentationTree", - "annotatedSpectrum", - "isotopePattern", - "lipidAnnotation", - "predictedFingerprint", - "compoundClasses", - "canopusPredictions" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "FormulaCandidate of this feature (aligned over runs) with.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FormulaCandidate" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ", - "description": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedSpectrumExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "inchiKey", - "in": "path", - "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "spectrumIndex", - "in": "query", - "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": -1 - } - }, - { - "name": "searchPrepared", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragments and sub-structures.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey", - "description": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getStructureAnnotatedMsDataExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "inchiKey", - "in": "path", - "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragments and sub-structures.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedMsMsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns Lipid annotation (ElGordo) for the given formulaId", - "description": "Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.", - "operationId": "getLipidAnnotation", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "LipidAnnotation", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LipidAnnotation" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns Isotope pattern information for given formulaId\n ", - "description": "Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).", - "operationId": "getIsotopePatternAnnotation", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Isotope pattern information", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/IsotopePatternAnnotation" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ", - "description": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).", - "operationId": "getFragTree", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Fragmentation Tree", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/FragmentationTree" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ", - "description": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.", - "operationId": "getFingerprintPrediction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "probabilistic fingerprint predicted by CSI:FingerID", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesByFormula", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesByFormulaPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateScored" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", - "description": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesByFormula", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", - "description": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesByFormulaPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this formula candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateScored" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction": { - "get": { - "tags": [ - "Features" - ], - "summary": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", - "description": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", - "operationId": "getCanopusPrediction", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Predicted compound classes", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CanopusPrediction" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes": { - "get": { - "tags": [ - "Features" - ], - "summary": "Return Best matching compound classes for given formulaId", - "description": "Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,", - "operationId": "getBestMatchingCompoundClasses", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Best matching Predicted compound classes", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CompoundClasses" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns a fragmentation spectrum (e", - "description": "Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.", - "operationId": "getFormulaAnnotatedSpectrum", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "spectrumIndex", - "in": "query", - "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", - "required": false, - "schema": { - "type": "integer", - "format": "int32", - "default": -1 - } - }, - { - "name": "searchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectrum annotated with fragment formulas and losses.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata": { - "get": { - "tags": [ - "Features" - ], - "summary": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId", - "description": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.", - "operationId": "getFormulaAnnotatedMsMsData", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "formulaId", - "in": "path", - "description": "identifier of the requested formula result", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Fragmentation spectra annotated with fragment formulas and losses.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AnnotatedMsMsData" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of FormulaResultContainers available for this feature with minimal information.", - "description": "Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", - "operationId": "getFormulaCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the formula result belongs to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "statistics", - "fragmentationTree", - "annotatedSpectrum", - "isotopePattern", - "lipidAnnotation", - "predictedFingerprint", - "compoundClasses", - "canopusPredictions" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "All FormulaCandidate of this feature with.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelFormulaCandidate" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", - "operationId": "getDeNovoStructureCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures": { - "get": { - "tags": [ - "Features" - ], - "summary": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", - "description": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidates", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", - "description": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", - "operationId": "getStructureCandidatesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) the structure candidates belong to.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "fingerprint", - "dbLinks", - "libraryMatches", - "structureSvg" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network", - "description": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAdductNetworkWithMergedTracesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "one feature that is considered the main feature of the adduct network", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TraceSetExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{objectId}": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get all tags associated with this Object", - "description": "[EXPERIMENTAL] Get all tags associated with this Object", - "operationId": "getTagsForAlignedFeaturesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to get from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "object to get tags for.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "the tags of the requested object", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Tag" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tagged": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag", - "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeaturesByTagExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project space to get features (aligned over runs) from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "filter", - "in": "query", - "description": "tag filter.", - "required": false, - "schema": { - "type": "string", - "default": "" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [] - } - } - ], - "responses": { - "200": { - "description": "tagged features (aligned over runs)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}": { - "get": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", - "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFoldChangesByAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "objectId", - "in": "path", - "description": "id of the object the fold changes are assigned to.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "fold changes", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FoldChange" - } - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table": { - "get": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", - "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeatureFoldChangeTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "description": "aggregation type.", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "table of fold changes.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsTable" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/quant-table": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)", - "description": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getFeatureQuantTableExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "type", - "in": "query", - "description": "quantification type.", - "required": false, - "schema": { - "type": "string", - "default": "APEX_HEIGHT", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "Quant table if akk feature in this project", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QuantTableExperimental" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/page": { - "get": { - "tags": [ - "Features" - ], - "summary": "Get all available features (aligned over runs) in the given project-space.", - "description": "Get all available features (aligned over runs) in the given project-space.", - "operationId": "getAlignedFeaturesPaged", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to read from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "msDataSearchPrepared", - "in": "query", - "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/aligned-features/grouped": { - "get": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag group", - "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "getAlignedFeaturesByGroupExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "groupName", - "in": "query", - "description": "tag group name.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "description": "Zero-based page index (0..N)", - "required": false, - "schema": { - "minimum": 0, - "type": "integer", - "default": 0 - } - }, - { - "name": "size", - "in": "query", - "description": "The size of the page to be returned", - "required": false, - "schema": { - "minimum": 1, - "type": "integer", - "default": 20 - } - }, - { - "name": "sort", - "in": "query", - "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "optFields", - "in": "query", - "description": "set of optional fields to be included. Use 'none' only to override defaults.", - "required": false, - "schema": { - "type": "array", - "items": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "msData", - "topAnnotationsSummary", - "topAnnotations", - "topAnnotationsDeNovo", - "computedTools", - "tags" - ] - }, - "default": [ - "none" - ] - } - } - ], - "responses": { - "200": { - "description": "tagged features (aligned over runs)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PagedModelAlignedFeature" - } - } - } - } - } - } - }, - "/api/job-configs": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request all available job configurations", - "description": "Request all available job configurations", - "operationId": "getJobConfigs", - "responses": { - "200": { - "description": "list of available {@link JobSubmission JobSubmission}s", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StoredJobSubmission" - } - } - } - } - } - } - } - }, - "/api/job-config-names": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "[DEPRECATED] Get all (non-default) job configuration names\n ", - "description": "[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.", - "operationId": "getJobConfigNames", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - }, - "deprecated": true - } - }, - "/api/info": { - "get": { - "tags": [ - "Info" - ], - "operationId": "getInfo", - "parameters": [ - { - "name": "serverInfo", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "updateInfo", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Info" - } - } - } - } - } - } - }, - "/api/default-job-config": { - "get": { - "tags": [ - "Jobs" - ], - "summary": "Request default job configuration", - "description": "Request default job configuration", - "operationId": "getDefaultJobConfig", - "parameters": [ - { - "name": "includeConfigMap", - "in": "query", - "description": "if true, generic configmap with-defaults will be included", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "moveParametersToConfigMap", - "in": "query", - "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeCustomDbsForStructureSearch", - "in": "query", - "description": "if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "{@link JobSubmission JobSubmission} with all parameters set to default values.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JobSubmission" - } - } - } - } - } - } - }, - "/api/databases/included": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getIncludedDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - } - }, - "/api/databases/custom": { - "get": { - "tags": [ - "Searchable Databases" - ], - "operationId": "getCustomDatabases", - "parameters": [ - { - "name": "includeStats", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "includeWithErrors", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SearchableDatabase" - } - } - } - } - } - } - } - }, - "/api/connection-status": { - "get": { - "tags": [ - "Info" - ], - "operationId": "getConnectionCheck", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ConnectionCheck" - } - } - } - } - } - } - }, - "/api/account/subscriptions": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get available subscriptions of the account currently logged in.", - "description": "Get available subscriptions of the account currently logged in. Fails if not logged in.", - "operationId": "getSubscriptions", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Subscription" - } - } - } - } - } - } - } - }, - "/api/account/signUp": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Open SignUp window in system browser and return signUp link.", - "description": "Open SignUp window in system browser and return signUp link.", - "operationId": "signUp", - "responses": { - "200": { - "description": "OK", - "content": { - "text/plain;charset=UTF-8": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/account/signUpURL": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get SignUp URL (For signUp via web browser)", - "description": "Get SignUp URL (For signUp via web browser)", - "operationId": "getSignUpURL", - "responses": { - "200": { - "description": "OK", - "content": { - "text/plain;charset=UTF-8": { - "schema": { - "type": "string" - } - } - } - } - } - } - }, - "/api/account/openPortal": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Open User portal in browser.", - "description": "Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.", - "operationId": "openPortal", - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/account/isLoggedIn": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Check if a user is logged in.", - "description": "Check if a user is logged in.", - "operationId": "isLoggedIn", - "responses": { - "200": { - "description": "true if the user is logged in", - "content": { - "application/json": { - "schema": { - "type": "boolean" - } - } - } - } - } - } - }, - "/api/account/": { - "get": { - "tags": [ - "Login and Account" - ], - "summary": "Get information about the account currently logged in.", - "description": "Get information about the account currently logged in. Fails if not logged in.", - "operationId": "getAccountInfo", - "parameters": [ - { - "name": "includeSubs", - "in": "query", - "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - } - ], - "responses": { - "200": { - "description": "Basic information about the account that has been logged in and its subscriptions.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AccountInfo" - } - } - } - } - } - } - }, - "/actuator/health": { - "get": { - "tags": [ - "Actuator" - ], - "summary": "Actuator web endpoint 'health'", - "operationId": "health", - "responses": { - "200": { - "description": "OK", - "content": { - "application/vnd.spring-boot.actuator.v3+json": { - "schema": { - "type": "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json": { - "schema": { - "type": "object" - } - }, - "application/json": { - "schema": { - "type": "object" - } - } - } - } - } - } - }, - "/api/projects/{projectId}/runs/tags/{runId}/{tagName}": { - "delete": { - "tags": [ - "Runs" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromRunExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "runId", - "in": "path", - "description": "run to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}": { - "delete": { - "tags": [ - "Compounds" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromCompoundExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "compoundId", - "in": "path", - "description": "compound (group of ion identities) to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/compounds/statistics/foldchanges": { - "delete": { - "tags": [ - "Compound Statistics" - ], - "summary": "[EXPERIMENTAL] Delete fold changes", - "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteCompoundFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}": { - "delete": { - "tags": [ - "Features" - ], - "summary": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space", - "description": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "removeTagFromAlignedFeatureExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alignedFeatureId", - "in": "path", - "description": "feature (aligned over runs) to delete tag from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "tagName", - "in": "path", - "description": "name of the tag to delete.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - }, - "/api/projects/{projectId}/aligned-features/statistics/foldchanges": { - "delete": { - "tags": [ - "Feature Statistics" - ], - "summary": "[EXPERIMENTAL] Delete fold changes", - "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", - "operationId": "deleteAlignedFeatureFoldChangesExperimental", - "parameters": [ - { - "name": "projectId", - "in": "path", - "description": "project-space to delete from.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "leftGroupName", - "in": "query", - "description": "name of the left group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rightGroupName", - "in": "query", - "description": "name of the right group.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "aggregation", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "AVG", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - } - }, - { - "name": "quantification", - "in": "query", - "required": false, - "schema": { - "type": "string", - "default": "APEX_INTENSITY", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - } - } - ], - "responses": { - "200": { - "description": "OK" - } - } - } - } - }, - "components": { - "schemas": { - "ProjectChangeEvent": { - "type": "object", - "properties": { - "eventType": { - "type": "string", - "enum": [ - "PROJECT_OPENED", - "PROJECT_MOVED", - "PROJECT_CLOSED", - "FEATURE_CREATED", - "FEATURE_UPDATED", - "FEATURE_DELETED", - "RESULT_CREATED", - "RESULT_UPDATED", - "RESULT_DELETED" - ] - }, - "projectId": { - "type": "string" - }, - "compoundId": { - "type": "string", - "nullable": true - }, - "featuredId": { - "type": "string", - "nullable": true - }, - "formulaId": { - "type": "string", - "nullable": true - }, - "structureInChIKey": { - "type": "string", - "nullable": true - } - } - }, - "DataImportEvent": { - "required": [ - "importedCompoundIds", - "importedFeatureIds" - ], - "type": "object", - "properties": { - "importJobId": { - "type": "string", - "nullable": true - }, - "importedCompoundIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "importedFeatureIds": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "BackgroundComputationsStateEvent": { - "required": [ - "affectedJobs", - "numberOfFinishedJobs", - "numberOfJobs", - "numberOfRunningJobs" - ], - "type": "object", - "properties": { - "affectedJobs": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - }, - "numberOfJobs": { - "type": "integer", - "format": "int32" - }, - "numberOfRunningJobs": { - "type": "integer", - "format": "int32" - }, - "numberOfFinishedJobs": { - "type": "integer", - "format": "int32" - } - } - }, - "ProjectInfo": { - "type": "object", - "properties": { - "projectId": { - "type": "string", - "description": "a user selected unique name of the project for easy access." - }, - "location": { - "type": "string", - "description": "storage location of the project." - }, - "description": { - "type": "string", - "description": "Description of this project.", - "nullable": true - }, - "type": { - "type": "string", - "description": "Type of this project.\n NULL if project type has not yet been specified by importing data.", - "nullable": true, - "enum": [ - "UNIMPORTED", - "DIRECT_IMPORT", - "PEAKLISTS", - "ALIGNED_RUNS", - "UNALIGNED_RUNS" - ] - }, - "compatible": { - "type": "boolean", - "description": "Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.", - "nullable": true - }, - "numOfFeatures": { - "type": "integer", - "description": "Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').", - "format": "int32", - "nullable": true - }, - "numOfCompounds": { - "type": "integer", - "description": "Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.", - "format": "int32", - "nullable": true - }, - "numOfBytes": { - "type": "integer", - "description": "Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').", - "format": "int64", - "nullable": true - } - } - }, - "TagDefinitionImport": { - "required": [ - "tagName", - "valueType" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of this tag defined by this definition (key)" - }, - "description": { - "type": "string", - "description": "A human-readable description about the purpose of this tag.", - "nullable": true - }, - "tagType": { - "type": "string", - "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", - "nullable": true - }, - "valueType": { - "type": "string", - "enum": [ - "NONE", - "BOOLEAN", - "INTEGER", - "REAL", - "TEXT", - "DATE", - "TIME" - ] - }, - "possibleValues": { - "type": "array", - "nullable": true, - "items": { - "type": "object", - "nullable": true - } - }, - "minValue": { - "type": "object", - "nullable": true - }, - "maxValue": { - "type": "object", - "nullable": true - } - } - }, - "TagDefinition": { - "required": [ - "tagName", - "valueType" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of this tag defined by this definition (key)" - }, - "description": { - "type": "string", - "description": "A human-readable description about the purpose of this tag.", - "nullable": true - }, - "tagType": { - "type": "string", - "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", - "nullable": true - }, - "valueType": { - "type": "string", - "enum": [ - "NONE", - "BOOLEAN", - "INTEGER", - "REAL", - "TEXT", - "DATE", - "TIME" - ] - }, - "possibleValues": { - "type": "array", - "nullable": true, - "items": { - "type": "object", - "nullable": true - } - }, - "minValue": { - "type": "object", - "nullable": true - }, - "maxValue": { - "type": "object", - "nullable": true - }, - "editable": { - "type": "boolean" - } - } - }, - "Tag": { - "required": [ - "tagName" - ], - "type": "object", - "properties": { - "tagName": { - "type": "string", - "description": "Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition." - }, - "value": { - "type": "object", - "description": "Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).", - "nullable": true - } - } - }, - "SampleTypeFoldChangeRequest": { - "type": "object", - "properties": { - "sampleRunIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "blankRunIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "controlRunIds": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "Job": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier to access the job via the API" - }, - "command": { - "type": "string", - "description": "Command string of the executed Task", - "nullable": true - }, - "progress": { - "$ref": "#/components/schemas/JobProgress" - }, - "affectedCompoundIds": { - "type": "array", - "description": "List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "affectedAlignedFeatureIds": { - "type": "array", - "description": "List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "jobEffect": { - "type": "string", - "description": "Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested", - "nullable": true, - "enum": [ - "IMPORT", - "COMPUTATION", - "DELETION" - ] - } - }, - "description": "Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal." - }, - "JobProgress": { - "type": "object", - "properties": { - "indeterminate": { - "type": "boolean", - "description": "Is the progress indeterminate or not", - "nullable": true - }, - "state": { - "type": "string", - "description": "Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.", - "enum": [ - "WAITING", - "READY", - "QUEUED", - "SUBMITTED", - "RUNNING", - "CANCELED", - "FAILED", - "DONE" - ] - }, - "currentProgress": { - "type": "integer", - "description": "Current progress value of the job.", - "format": "int64", - "nullable": true - }, - "maxProgress": { - "type": "integer", - "description": "Progress value to reach (might also change during execution)", - "format": "int64", - "nullable": true - }, - "message": { - "type": "string", - "description": "Progress information and warnings.", - "nullable": true - }, - "errorMessage": { - "type": "string", - "description": "Error message if the job did not finish successfully failed.", - "nullable": true - } - }, - "description": "Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.", - "nullable": true - }, - "BasicSpectrum": { - "required": [ - "cosineQuery", - "peaks" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Optional Displayable name of this spectrum.", - "nullable": true - }, - "msLevel": { - "type": "integer", - "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", - "format": "int32", - "nullable": true - }, - "collisionEnergy": { - "type": "string", - "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", - "nullable": true - }, - "instrument": { - "type": "string", - "description": "Instrument information.", - "nullable": true - }, - "precursorMz": { - "type": "number", - "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", - "format": "double", - "nullable": true - }, - "scanNumber": { - "type": "integer", - "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", - "format": "int32", - "nullable": true - }, - "cosineQuery": { - "type": "boolean", - "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", - "default": false - }, - "precursorPeak": { - "$ref": "#/components/schemas/SimplePeak" - }, - "peaks": { - "type": "array", - "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", - "items": { - "$ref": "#/components/schemas/SimplePeak" - } - }, - "absIntensityFactor": { - "type": "number", - "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", - "format": "double", - "nullable": true, - "deprecated": true - }, - "maxNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to MAX norm.", - "format": "double", - "nullable": true - }, - "sumNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to SUM norm.", - "format": "double", - "nullable": true - }, - "l2NormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", - "format": "double", - "nullable": true - }, - "firstPeakNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "BinaryFingerprint": { - "type": "object", - "properties": { - "bitsSet": { - "type": "array", - "description": "Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)", - "items": { - "type": "integer", - "format": "int32" - } - }, - "length": { - "type": "integer", - "description": "Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits", - "format": "int32" - } - }, - "nullable": true - }, - "DBLink": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "id": { - "type": "string" - } - }, - "nullable": true - }, - "PeakPair": { - "required": [ - "queryPeak", - "referencePeak" - ], - "type": "object", - "properties": { - "queryPeak": { - "type": "integer", - "format": "int32" - }, - "referencePeak": { - "type": "integer", - "format": "int32" - } - } - }, - "SimplePeak": { - "type": "object", - "properties": { - "mz": { - "type": "number", - "format": "double" - }, - "intensity": { - "type": "number", - "format": "double" - } - } - }, - "SpectralLibraryMatch": { - "required": [ - "inchiKey", - "querySpectrumIndex", - "similarity", - "uuid" - ], - "type": "object", - "properties": { - "specMatchId": { - "type": "string" - }, - "rank": { - "type": "integer", - "format": "int32" - }, - "similarity": { - "type": "number", - "description": "Similarity between query and reference spectrum", - "format": "float" - }, - "sharedPeaks": { - "type": "integer", - "description": "Number of shared/matched peaks", - "format": "int32" - }, - "sharedPeakMapping": { - "type": "array", - "description": "List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)", - "items": { - "$ref": "#/components/schemas/PeakPair" - } - }, - "querySpectrumIndex": { - "type": "integer", - "format": "int32" - }, - "dbName": { - "type": "string" - }, - "dbId": { - "type": "string" - }, - "uuid": { - "type": "integer", - "format": "int64" - }, - "splash": { - "type": "string" - }, - "molecularFormula": { - "type": "string" - }, - "adduct": { - "type": "string" - }, - "exactMass": { - "type": "number", - "format": "double" - }, - "smiles": { - "type": "string" - }, - "type": { - "type": "string", - "default": "IDENTITY", - "enum": [ - "IDENTITY", - "ANALOG" - ] - }, - "inchiKey": { - "type": "string" - }, - "referenceSpectrumType": { - "type": "string", - "default": "SPECTRUM", - "enum": [ - "SPECTRUM", - "MERGED_SPECTRUM" - ] - }, - "referenceSpectrum": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "querySpectrumType": { - "type": "string", - "enum": [ - "SPECTRUM", - "MERGED_SPECTRUM" - ] - } - }, - "nullable": true - }, - "StructureCandidateFormula": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - }, - "rank": { - "type": "integer", - "description": "the overall rank of this candidate among all candidates of this feature", - "format": "int32" - }, - "csiScore": { - "type": "number", - "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", - "format": "double" - }, - "tanimotoSimilarity": { - "type": "number", - "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", - "format": "double", - "nullable": true - }, - "mcesDistToTopHit": { - "type": "number", - "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", - "format": "double", - "nullable": true - }, - "fingerprint": { - "$ref": "#/components/schemas/BinaryFingerprint" - }, - "molecularFormula": { - "type": "string", - "description": "Molecular formula of this candidate" - }, - "adduct": { - "type": "string", - "description": "Adduct of this candidate" - }, - "formulaId": { - "type": "string", - "description": "Id of the corresponding Formula candidate" - } - } - }, - "SearchableDatabaseParameters": { - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "display name of the database\n Should be short", - "nullable": true - }, - "location": { - "type": "string", - "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", - "nullable": true - }, - "matchRtOfReferenceSpectra": { - "type": "boolean", - "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", - "nullable": true, - "default": false - } - } - }, - "SearchableDatabase": { - "required": [ - "customDb", - "databaseId", - "searchable", - "updateNeeded" - ], - "type": "object", - "properties": { - "displayName": { - "type": "string", - "description": "display name of the database\n Should be short", - "nullable": true - }, - "location": { - "type": "string", - "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", - "nullable": true - }, - "matchRtOfReferenceSpectra": { - "type": "boolean", - "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", - "nullable": true, - "default": false - }, - "databaseId": { - "type": "string", - "description": "A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name." - }, - "customDb": { - "type": "boolean", - "description": "Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified." - }, - "searchable": { - "type": "boolean", - "description": "True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search." - }, - "dbDate": { - "type": "string", - "description": "Date on which the data was imported / database was created.", - "nullable": true - }, - "dbVersion": { - "type": "integer", - "description": "database schema version", - "format": "int32", - "nullable": true - }, - "updateNeeded": { - "type": "boolean", - "description": "If true the database version is outdated and the database needs to be updated or re-imported before it can be used." - }, - "numberOfStructures": { - "type": "integer", - "description": "Number of unique compounds available in this database.", - "format": "int64", - "nullable": true - }, - "numberOfFormulas": { - "type": "integer", - "description": "Number of different molecular formulas available in this database.", - "format": "int64", - "nullable": true - }, - "numberOfReferenceSpectra": { - "type": "integer", - "description": "Number of reference spectra available in this database", - "format": "int64", - "nullable": true - }, - "errorMessage": { - "type": "string", - "description": "Error message if the database could not be loaded", - "nullable": true - } - } - }, - "AccountInfo": { - "type": "object", - "properties": { - "userID": { - "type": "string" - }, - "username": { - "type": "string", - "nullable": true - }, - "userEmail": { - "type": "string" - }, - "gravatarURL": { - "type": "string", - "nullable": true - }, - "subscriptions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Subscription" - } - }, - "activeSubscriptionId": { - "type": "string", - "nullable": true - } - } - }, - "AllowedFeatures": { - "type": "object", - "properties": { - "cli": { - "type": "boolean" - }, - "api": { - "type": "boolean" - }, - "deNovo": { - "type": "boolean" - }, - "importMSRuns": { - "type": "boolean" - }, - "importPeakLists": { - "type": "boolean" - }, - "importCef": { - "type": "boolean" - } - } - }, - "Subscription": { - "type": "object", - "properties": { - "sid": { - "type": "string", - "description": "Unique identifier of this subscription" - }, - "subscriberId": { - "type": "string", - "description": "ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid." - }, - "subscriberName": { - "type": "string", - "description": "Optional name of the owner of this subscription", - "nullable": true - }, - "expirationDate": { - "type": "string", - "format": "date-time", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time", - "nullable": true - }, - "countQueries": { - "type": "boolean", - "nullable": true - }, - "instanceLimit": { - "type": "integer", - "description": "Limit of instances (features) that can be computed with this subscription", - "format": "int32", - "nullable": true - }, - "instanceHashRecordingTime": { - "type": "integer", - "description": "Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is", - "format": "int32", - "nullable": true - }, - "maxQueriesPerInstance": { - "type": "integer", - "description": "Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.", - "format": "int32", - "nullable": true - }, - "maxUserAccounts": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "serviceUrl": { - "type": "string" - }, - "description": { - "type": "string", - "nullable": true - }, - "name": { - "type": "string", - "nullable": true - }, - "tos": { - "type": "string", - "nullable": true - }, - "pp": { - "type": "string", - "nullable": true - }, - "allowedFeatures": { - "$ref": "#/components/schemas/AllowedFeatures" - } - } - }, - "Canopus": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - } - }, - "description": "User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool", - "nullable": true - }, - "FingerprintPrediction": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "useScoreThreshold": { - "type": "boolean", - "description": "If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.", - "nullable": true - }, - "alwaysPredictHighRefMatches": { - "type": "boolean", - "description": "If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.", - "nullable": true - } - }, - "description": "User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool", - "nullable": true - }, - "JobSubmission": { - "type": "object", - "properties": { - "compoundIds": { - "type": "array", - "description": "Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "alignedFeatureIds": { - "type": "array", - "description": "Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "fallbackAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "enforcedAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "detectableAdducts": { - "type": "array", - "description": "Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "recompute": { - "type": "boolean", - "description": "Indicate if already existing result for a tool to be executed should be overwritten or not.", - "nullable": true - }, - "spectraSearchParams": { - "$ref": "#/components/schemas/SpectralLibrarySearch" - }, - "formulaIdParams": { - "$ref": "#/components/schemas/Sirius" - }, - "zodiacParams": { - "$ref": "#/components/schemas/Zodiac" - }, - "fingerprintPredictionParams": { - "$ref": "#/components/schemas/FingerprintPrediction" - }, - "canopusParams": { - "$ref": "#/components/schemas/Canopus" - }, - "structureDbSearchParams": { - "$ref": "#/components/schemas/StructureDbSearch" - }, - "msNovelistParams": { - "$ref": "#/components/schemas/MsNovelist" - }, - "configMap": { - "type": "object", - "additionalProperties": { - "type": "string", - "nullable": true - }, - "description": "As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", - "nullable": true - } - }, - "description": "Object to submit a job to be executed by SIRIUS" - }, - "MsNovelist": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "numberOfCandidateToPredict": { - "type": "integer", - "description": "Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.", - "format": "int32", - "nullable": true - } - }, - "nullable": true - }, - "Sirius": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "profile": { - "type": "string", - "description": "Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.", - "nullable": true, - "enum": [ - "QTOF", - "ORBITRAP" - ] - }, - "numberOfCandidates": { - "type": "integer", - "description": "Number of formula candidates to keep as result list (Formula Candidates).", - "format": "int32", - "nullable": true - }, - "numberOfCandidatesPerIonization": { - "type": "integer", - "description": "Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.", - "format": "int32", - "nullable": true - }, - "massAccuracyMS2ppm": { - "type": "number", - "description": "Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.", - "format": "double", - "nullable": true - }, - "isotopeMs2Settings": { - "type": "string", - "description": "Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS", - "nullable": true, - "enum": [ - "IGNORE", - "FILTER", - "SCORE" - ] - }, - "filterByIsotopePattern": { - "type": "boolean", - "description": "When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.", - "nullable": true - }, - "enforceElGordoFormula": { - "type": "boolean", - "description": "El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.", - "nullable": true - }, - "performBottomUpSearch": { - "type": "boolean", - "description": "If true, molecular formula generation via bottom up search is enabled.", - "nullable": true - }, - "performDenovoBelowMz": { - "type": "number", - "description": "Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.", - "format": "double", - "nullable": true - }, - "formulaSearchDBs": { - "type": "array", - "description": "List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "applyFormulaConstraintsToDBAndBottomUpSearch": { - "type": "boolean", - "description": "By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.", - "nullable": true - }, - "enforcedFormulaConstraints": { - "type": "string", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered", - "nullable": true - }, - "fallbackFormulaConstraints": { - "type": "string", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)", - "nullable": true - }, - "detectableElements": { - "type": "array", - "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "ilpTimeout": { - "$ref": "#/components/schemas/Timeout" - }, - "useHeuristic": { - "$ref": "#/components/schemas/UseHeuristic" - }, - "injectSpecLibMatchFormulas": { - "type": "boolean", - "description": "If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied", - "nullable": true - }, - "minScoreToInjectSpecLibMatch": { - "type": "number", - "description": "Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.", - "format": "double", - "nullable": true - }, - "minPeaksToInjectSpecLibMatch": { - "type": "integer", - "description": "Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.", - "format": "int32", - "nullable": true - } - }, - "description": "User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.", - "nullable": true - }, - "SpectralLibrarySearch": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "spectraSearchDBs": { - "type": "array", - "description": "Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "precursorDeviationPpm": { - "type": "number", - "description": "Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.", - "format": "double", - "nullable": true - }, - "minSimilarity": { - "type": "number", - "description": "Minimal spectral similarity of a spectral match to be considered a hit.", - "format": "float", - "nullable": true - }, - "minNumOfPeaks": { - "type": "integer", - "description": "Minimal number of matching peaks of a spectral match to be considered a hit.", - "format": "int32", - "nullable": true - }, - "enableAnalogueSearch": { - "type": "boolean", - "description": "Enable analogue search in addition to the identity spectral library search" - }, - "minSimilarityAnalogue": { - "type": "number", - "description": "Minimal spectral similarity of a spectral match to be considered an analogue hit.", - "format": "float", - "nullable": true - }, - "minNumOfPeaksAnalogue": { - "type": "integer", - "description": "Minimal number of matching peaks of a spectral match to be considered an analogue hit.", - "format": "int32", - "nullable": true - }, - "scoring": { - "type": "string", - "description": "NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.", - "nullable": true, - "deprecated": true, - "enum": [ - "INTENSITY", - "GAUSSIAN", - "MODIFIED_COSINE", - "FAST_COSINE" - ] - }, - "peakDeviationPpm": { - "type": "number", - "description": "NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.", - "format": "double", - "nullable": true, - "deprecated": true - } - }, - "description": "User/developer friendly parameter subset for the Spectral library search tool.", - "nullable": true - }, - "StructureDbSearch": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "structureSearchDBs": { - "type": "array", - "description": "Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "tagStructuresWithLipidClass": { - "type": "boolean", - "description": "Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.", - "nullable": true - }, - "expansiveSearchConfidenceMode": { - "type": "string", - "description": "Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.", - "nullable": true, - "enum": [ - "OFF", - "EXACT", - "APPROXIMATE" - ] - } - }, - "description": "User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.", - "nullable": true - }, - "Timeout": { - "type": "object", - "properties": { - "numberOfSecondsPerDecomposition": { - "type": "integer", - "format": "int32" - }, - "numberOfSecondsPerInstance": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "UseHeuristic": { - "type": "object", - "properties": { - "useHeuristicAboveMz": { - "type": "integer", - "format": "int32" - }, - "useOnlyHeuristicAboveMz": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "Zodiac": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "tags whether the tool is enabled" - }, - "consideredCandidatesAt300Mz": { - "type": "integer", - "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.", - "format": "int32", - "nullable": true - }, - "consideredCandidatesAt800Mz": { - "type": "integer", - "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.", - "format": "int32", - "nullable": true - }, - "runInTwoSteps": { - "type": "boolean", - "description": "As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.", - "nullable": true - }, - "edgeFilterThresholds": { - "$ref": "#/components/schemas/ZodiacEdgeFilterThresholds" - }, - "gibbsSamplerParameters": { - "$ref": "#/components/schemas/ZodiacEpochs" - }, - "librarySearchAnchors": { - "$ref": "#/components/schemas/ZodiacLibraryScoring" - }, - "analogueSearchAnchors": { - "$ref": "#/components/schemas/ZodiacAnalogueNodes" - } - }, - "description": "User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool", - "nullable": true - }, - "ZodiacAnalogueNodes": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "minSimilarity": { - "type": "number", - "format": "double" - }, - "minSharedPeaks": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacEdgeFilterThresholds": { - "type": "object", - "properties": { - "thresholdFilter": { - "type": "number", - "format": "double" - }, - "minLocalCandidates": { - "type": "integer", - "format": "int32" - }, - "minLocalConnections": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacEpochs": { - "type": "object", - "properties": { - "iterations": { - "type": "integer", - "format": "int32" - }, - "burnInPeriod": { - "type": "integer", - "format": "int32" - }, - "numberOfMarkovChains": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "ZodiacLibraryScoring": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "minSimilarity": { - "type": "number", - "format": "double" - } - }, - "nullable": true - }, - "ImportResult": { - "required": [ - "affectedAlignedFeatureIds", - "affectedCompoundIds" - ], - "type": "object", - "properties": { - "affectedCompoundIds": { - "type": "array", - "description": "List of compoundIds that have been imported.", - "items": { - "type": "string" - } - }, - "affectedAlignedFeatureIds": { - "type": "array", - "description": "List of alignedFeatureIds that have been imported..", - "items": { - "type": "string" - } - } - } - }, - "Deviation": { - "type": "object", - "properties": { - "ppm": { - "type": "number", - "format": "double" - }, - "absolute": { - "type": "number", - "format": "double" - } - }, - "nullable": true - }, - "LcmsSubmissionParameters": { - "type": "object", - "properties": { - "alignLCMSRuns": { - "type": "boolean", - "description": "Specifies whether LC/MS runs should be aligned", - "default": true - }, - "noiseIntensity": { - "type": "number", - "description": "Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.", - "format": "double", - "default": -1 - }, - "traceMaxMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "alignMaxMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "alignMaxRetentionTimeDeviation": { - "type": "number", - "description": "Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.", - "format": "double", - "default": -1 - }, - "minSNR": { - "type": "number", - "description": "Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory", - "format": "double", - "default": 3 - } - } - }, - "TagGroup": { - "type": "object", - "properties": { - "groupName": { - "type": "string", - "description": "Name of this Grouping query." - }, - "luceneQuery": { - "type": "string", - "description": "Query used to group the entities in lucene format." - }, - "groupType": { - "type": "string" - } - } - }, - "CompoundImport": { - "required": [ - "features" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Some (optional) human-readable name", - "nullable": true - }, - "features": { - "type": "array", - "description": "The features this compound consists of.", - "items": { - "$ref": "#/components/schemas/FeatureImport" - } - } - } - }, - "FeatureImport": { - "required": [ - "charge", - "ionMass" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "nullable": true - }, - "externalFeatureId": { - "type": "string", - "description": "Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.", - "nullable": true - }, - "ionMass": { - "type": "number", - "format": "double" - }, - "charge": { - "type": "integer", - "format": "int32" - }, - "detectedAdducts": { - "uniqueItems": true, - "type": "array", - "description": "Detected adducts of this feature. Can be NULL or empty if no adducts are known.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "rtStartSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtApexSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "dataQuality": { - "type": "string", - "description": "A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "mergedMs1": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "ms1Spectra": { - "type": "array", - "description": "List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.", - "nullable": true, - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "ms2Spectra": { - "type": "array", - "description": "List of MS/MS spectra that belong to this feature.", - "nullable": true, - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - } - }, - "description": "Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail." - }, - "AlignedFeature": { - "required": [ - "charge", - "detectedAdducts" - ], - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string" - }, - "compoundId": { - "type": "string" - }, - "name": { - "type": "string" - }, - "externalFeatureId": { - "type": "string", - "description": "Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source." - }, - "ionMass": { - "type": "number", - "format": "double" - }, - "charge": { - "type": "integer", - "description": "Ion mode (charge) this feature has been measured in.", - "format": "int32" - }, - "detectedAdducts": { - "uniqueItems": true, - "type": "array", - "description": "Adducts of this feature that have been detected during preprocessing.", - "items": { - "type": "string" - } - }, - "rtStartSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "rtApexSeconds": { - "type": "number", - "format": "double", - "nullable": true - }, - "quality": { - "type": "string", - "description": "Quality of this feature.", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "hasMs1": { - "type": "boolean", - "description": "If true, the feature has at lease one MS1 spectrum" - }, - "hasMsMs": { - "type": "boolean", - "description": "If true, the feature has at lease one MS/MS spectrum" - }, - "msData": { - "$ref": "#/components/schemas/MsData" - }, - "topAnnotations": { - "$ref": "#/components/schemas/FeatureAnnotations" - }, - "topAnnotationsDeNovo": { - "$ref": "#/components/schemas/FeatureAnnotations" - }, - "computing": { - "type": "boolean", - "description": "Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results" - }, - "computedTools": { - "$ref": "#/components/schemas/ComputedSubtools" - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - }, - "description": "The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view." - }, - "AnnotatedPeak": { - "type": "object", - "properties": { - "mz": { - "type": "number", - "format": "double" - }, - "intensity": { - "type": "number", - "format": "double" - }, - "peakAnnotation": { - "$ref": "#/components/schemas/PeakAnnotation" - } - } - }, - "AnnotatedSpectrum": { - "required": [ - "cosineQuery", - "peaks" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Optional Displayable name of this spectrum.", - "nullable": true - }, - "msLevel": { - "type": "integer", - "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", - "format": "int32", - "nullable": true - }, - "collisionEnergy": { - "type": "string", - "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", - "nullable": true - }, - "instrument": { - "type": "string", - "description": "Instrument information.", - "nullable": true - }, - "precursorMz": { - "type": "number", - "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", - "format": "double", - "nullable": true - }, - "scanNumber": { - "type": "integer", - "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", - "format": "int32", - "nullable": true - }, - "cosineQuery": { - "type": "boolean", - "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", - "default": false - }, - "precursorPeak": { - "$ref": "#/components/schemas/SimplePeak" - }, - "peaks": { - "type": "array", - "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", - "items": { - "$ref": "#/components/schemas/AnnotatedPeak" - } - }, - "absIntensityFactor": { - "type": "number", - "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", - "format": "double", - "nullable": true, - "deprecated": true - }, - "maxNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to MAX norm.", - "format": "double", - "nullable": true - }, - "sumNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to SUM norm.", - "format": "double", - "nullable": true - }, - "l2NormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", - "format": "double", - "nullable": true - }, - "firstPeakNormFactor": { - "type": "number", - "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", - "format": "double", - "nullable": true - }, - "spectrumAnnotation": { - "$ref": "#/components/schemas/SpectrumAnnotation" - } - }, - "description": "Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes", - "nullable": true - }, - "CanopusPrediction": { - "type": "object", - "properties": { - "classyFireClasses": { - "type": "array", - "description": "All predicted ClassyFire classes", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - }, - "npcClasses": { - "type": "array", - "description": "All predicted NPC classes", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - } - }, - "description": "Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.", - "nullable": true - }, - "Compound": { - "type": "object", - "properties": { - "compoundId": { - "type": "string", - "description": "uid of this compound Entity" - }, - "name": { - "type": "string", - "description": "Some (optional) human-readable name", - "nullable": true - }, - "rtStartSeconds": { - "type": "number", - "description": "The merged/consensus retention time start (earliest rt) of this compound", - "format": "double", - "nullable": true - }, - "rtEndSeconds": { - "type": "number", - "description": "The merged/consensus retention time end (latest rt) of this compound", - "format": "double", - "nullable": true - }, - "neutralMass": { - "type": "number", - "description": "Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass", - "format": "double", - "nullable": true - }, - "features": { - "type": "array", - "description": "List of aligned features (adducts) that belong to the same (this) compound", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - }, - "consensusAnnotations": { - "$ref": "#/components/schemas/ConsensusAnnotationsCSI" - }, - "consensusAnnotationsDeNovo": { - "$ref": "#/components/schemas/ConsensusAnnotationsDeNovo" - }, - "customAnnotations": { - "$ref": "#/components/schemas/ConsensusAnnotationsCSI" - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - } - }, - "CompoundClass": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Specifies the classification ontology the CompoundClass belongs to.", - "nullable": true, - "enum": [ - "ClassyFire", - "NPC" - ] - }, - "level": { - "type": "string", - "description": "Name of the level this compound class belongs to", - "nullable": true - }, - "levelIndex": { - "type": "integer", - "description": "Index of the level this compound class belongs to", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "description": "Name of the compound class.", - "nullable": true - }, - "description": { - "type": "string", - "description": "Description of the compound class.", - "nullable": true - }, - "id": { - "type": "integer", - "description": "Unique id of the class. Might be undefined for certain classification ontologies.", - "format": "int32", - "nullable": true - }, - "probability": { - "type": "number", - "description": "prediction probability", - "format": "double" - }, - "index": { - "type": "integer", - "description": "Absolute index of this property in the predicted vector/embedding", - "format": "int32" - }, - "parentId": { - "type": "integer", - "description": "Unique id of the parent class. Might be undefined for certain classification ontologies.", - "format": "int32", - "nullable": true - }, - "parentName": { - "type": "string", - "description": "Name of the parent compound class.", - "nullable": true - } - }, - "description": "Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to", - "nullable": true - }, - "CompoundClasses": { - "type": "object", - "properties": { - "npcPathway": { - "$ref": "#/components/schemas/CompoundClass" - }, - "npcSuperclass": { - "$ref": "#/components/schemas/CompoundClass" - }, - "npcClass": { - "$ref": "#/components/schemas/CompoundClass" - }, - "classyFireLineage": { - "type": "array", - "description": "Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - }, - "classyFireAlternatives": { - "type": "array", - "description": "Alternative ClassyFire classes with high probability that do not fit into the linage", - "nullable": true, - "items": { - "$ref": "#/components/schemas/CompoundClass" - } - } - }, - "description": "Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.", - "nullable": true - }, - "ComputedSubtools": { - "type": "object", - "properties": { - "librarySearch": { - "type": "boolean" - }, - "formulaSearch": { - "type": "boolean" - }, - "zodiac": { - "type": "boolean" - }, - "fingerprint": { - "type": "boolean" - }, - "canopus": { - "type": "boolean" - }, - "structureSearch": { - "type": "boolean" - }, - "deNovoSearch": { - "type": "boolean" - } - }, - "description": "Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.", - "nullable": true - }, - "ConsensusAnnotationsCSI": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", - "nullable": true - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "supportingFeatureIds": { - "type": "array", - "description": "FeatureIds where the topAnnotation supports this annotation.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "selectionCriterion": { - "type": "string", - "description": "Null if this is a custom selection", - "nullable": true, - "enum": [ - "MAJORITY_STRUCTURE", - "CONFIDENCE_STRUCTURE", - "SINGLETON_STRUCTURE", - "MAJORITY_FORMULA", - "TOP_FORMULA", - "SINGLETON_FORMULA" - ] - }, - "csiFingerIdStructure": { - "$ref": "#/components/schemas/StructureCandidate" - }, - "confidenceExactMatch": { - "type": "number", - "description": "Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported", - "format": "double", - "nullable": true - }, - "confidenceApproxMatch": { - "type": "number", - "description": "Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "ConsensusAnnotationsDeNovo": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", - "nullable": true - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "supportingFeatureIds": { - "type": "array", - "description": "FeatureIds where the topAnnotation supports this annotation.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "selectionCriterion": { - "type": "string", - "description": "Criterion that was used to select the consensus annotation.", - "nullable": true, - "enum": [ - "MAJORITY_FORMULA", - "TOP_FORMULA", - "SINGLETON_FORMULA" - ] - } - }, - "nullable": true - }, - "FeatureAnnotations": { - "type": "object", - "properties": { - "formulaAnnotation": { - "$ref": "#/components/schemas/FormulaCandidate" - }, - "structureAnnotation": { - "$ref": "#/components/schemas/StructureCandidateScored" - }, - "compoundClassAnnotation": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "confidenceExactMatch": { - "type": "number", - "description": "Confidence Score that represents the confidence whether the top hit is correct.", - "format": "double", - "nullable": true - }, - "confidenceApproxMatch": { - "type": "number", - "description": "Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.", - "format": "double", - "nullable": true - }, - "expansiveSearchState": { - "type": "string", - "description": "Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)", - "nullable": true, - "enum": [ - "OFF", - "EXACT", - "APPROXIMATE" - ] - }, - "specifiedDatabases": { - "type": "array", - "description": "List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "expandedDatabases": { - "type": "array", - "description": "List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - } - }, - "description": "Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.", - "nullable": true - }, - "FormulaCandidate": { - "type": "object", - "properties": { - "formulaId": { - "type": "string", - "description": "Unique identifier of this formula candidate" - }, - "molecularFormula": { - "type": "string", - "description": "molecular formula of this formula candidate" - }, - "adduct": { - "type": "string", - "description": "Adduct of this formula candidate" - }, - "rank": { - "type": "integer", - "format": "int32" - }, - "siriusScoreNormalized": { - "type": "number", - "description": "Normalized Sirius Score of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "siriusScore": { - "type": "number", - "description": "Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "isotopeScore": { - "type": "number", - "format": "double", - "nullable": true - }, - "treeScore": { - "type": "number", - "format": "double", - "nullable": true - }, - "zodiacScore": { - "type": "number", - "description": "Zodiac Score of the formula candidate.\n If NULL result is not available", - "format": "double", - "nullable": true - }, - "numOfExplainedPeaks": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "numOfExplainablePeaks": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "totalExplainedIntensity": { - "type": "number", - "format": "double", - "nullable": true - }, - "medianMassDeviation": { - "$ref": "#/components/schemas/Deviation" - }, - "fragmentationTree": { - "$ref": "#/components/schemas/FragmentationTree" - }, - "annotatedSpectrum": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - }, - "isotopePatternAnnotation": { - "$ref": "#/components/schemas/IsotopePatternAnnotation" - }, - "lipidAnnotation": { - "$ref": "#/components/schemas/LipidAnnotation" - }, - "predictedFingerprint": { - "type": "array", - "description": "Probabilistic molecular fingerprint predicted by CSI:FingerID", - "nullable": true, - "items": { - "type": "number", - "format": "double", - "nullable": true - } - }, - "compoundClasses": { - "$ref": "#/components/schemas/CompoundClasses" - }, - "canopusPrediction": { - "$ref": "#/components/schemas/CanopusPrediction" - } - }, - "description": "Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.", - "nullable": true - }, - "FragmentNode": { - "type": "object", - "properties": { - "fragmentId": { - "type": "integer", - "format": "int32" - }, - "molecularFormula": { - "type": "string", - "description": "neutral molecular formula of the fragment without adduct", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.", - "nullable": true - }, - "massDeviationDa": { - "type": "number", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "format": "double", - "nullable": true - }, - "score": { - "type": "number", - "format": "double", - "nullable": true - }, - "intensity": { - "type": "number", - "format": "double", - "nullable": true - }, - "mz": { - "type": "number", - "format": "double", - "nullable": true - } - } - }, - "FragmentationTree": { - "type": "object", - "properties": { - "fragments": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FragmentNode" - } - }, - "losses": { - "type": "array", - "items": { - "$ref": "#/components/schemas/LossEdge" - } - }, - "treeScore": { - "type": "number", - "format": "double" - }, - "molecularFormula": { - "type": "string" - }, - "adduct": { - "type": "string" - } - }, - "description": "Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation", - "nullable": true - }, - "IsotopePatternAnnotation": { - "type": "object", - "properties": { - "isotopePattern": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "simulatedPattern": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "nullable": true - }, - "LipidAnnotation": { - "type": "object", - "properties": { - "lipidSpecies": { - "type": "string", - "description": "Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.", - "nullable": true - }, - "lipidMapsId": { - "type": "string", - "description": "LIPID MAPS id of the predicted lipid class.", - "nullable": true - }, - "lipidClassName": { - "type": "string", - "description": "Human-readable name of the predicted lipid class.", - "nullable": true - }, - "hypotheticalStructure": { - "type": "string", - "description": "Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.", - "nullable": true - }, - "chainsUnknown": { - "type": "boolean", - "description": "True of the formula composition of the chains could not be determined from the MS/MS.", - "nullable": true - } - }, - "nullable": true - }, - "LossEdge": { - "type": "object", - "properties": { - "sourceFragmentIdx": { - "type": "integer", - "format": "int32" - }, - "targetFragmentIdx": { - "type": "integer", - "format": "int32" - }, - "molecularFormula": { - "type": "string" - }, - "score": { - "type": "number", - "format": "double" - } - } - }, - "MsData": { - "type": "object", - "properties": { - "isotopePattern": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "mergedMs1": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "mergedMs2": { - "$ref": "#/components/schemas/BasicSpectrum" - }, - "ms1Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - }, - "ms2Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/BasicSpectrum" - } - } - }, - "description": "The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar", - "nullable": true - }, - "ParentPeak": { - "required": [ - "lossFormula", - "parentFragmentId", - "parentIdx" - ], - "type": "object", - "properties": { - "parentIdx": { - "type": "integer", - "description": "Index to the parent peak connected by this loss in this particular spectrum", - "format": "int32" - }, - "parentFragmentId": { - "type": "integer", - "description": "Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", - "format": "int32" - }, - "lossFormula": { - "type": "string", - "description": "Molecular formula of the neutral loss that connects these two peaks." - } - }, - "description": "Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.", - "nullable": true - }, - "PeakAnnotation": { - "required": [ - "fragmentId" - ], - "type": "object", - "properties": { - "fragmentId": { - "type": "integer", - "description": "Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", - "format": "int32" - }, - "molecularFormula": { - "type": "string", - "description": "Molecular formula that has been annotated to this peak", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "Adduct that has been annotated to this peak", - "nullable": true - }, - "exactMass": { - "type": "number", - "description": "Exact mass of the annotated molecular formula and adduct", - "format": "double", - "nullable": true - }, - "massDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the measured peak mass in mDa", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the measured peak mass in ppm", - "format": "double", - "nullable": true - }, - "recalibratedMassDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa", - "format": "double", - "nullable": true - }, - "recalibratedMassDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the recalibrated peak mass in ppm", - "format": "double", - "nullable": true - }, - "parentPeak": { - "$ref": "#/components/schemas/ParentPeak" - }, - "substructureAtoms": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureBonds": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureBondsCut": { - "type": "array", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.", - "nullable": true, - "items": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "substructureScore": { - "type": "number", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.", - "format": "float", - "nullable": true - }, - "hydrogenRearrangements": { - "type": "integer", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.", - "format": "int32", - "nullable": true - } - }, - "nullable": true - }, - "SpectrumAnnotation": { - "type": "object", - "properties": { - "molecularFormula": { - "type": "string", - "description": "Molecular formula that has been annotated to this spectrum", - "nullable": true - }, - "adduct": { - "type": "string", - "description": "Adduct that has been annotated to this spectrum", - "nullable": true - }, - "exactMass": { - "type": "number", - "description": "Exact mass based on the annotated molecular formula and ionization", - "format": "double", - "nullable": true - }, - "massDeviationMz": { - "type": "number", - "description": "Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa", - "format": "double", - "nullable": true - }, - "massDeviationPpm": { - "type": "number", - "description": "Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm", - "format": "double", - "nullable": true - }, - "structureAnnotationSmiles": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationName": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationSvg": { - "type": "string", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.", - "nullable": true - }, - "structureAnnotationScore": { - "type": "number", - "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "StructureCandidate": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - } - }, - "nullable": true - }, - "StructureCandidateScored": { - "type": "object", - "properties": { - "inchiKey": { - "type": "string" - }, - "smiles": { - "type": "string" - }, - "structureName": { - "type": "string", - "nullable": true - }, - "structureSvg": { - "type": "string", - "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true - }, - "dbLinks": { - "type": "array", - "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/DBLink" - } - }, - "spectralLibraryMatches": { - "type": "array", - "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", - "nullable": true, - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "xlogP": { - "type": "number", - "format": "double", - "nullable": true - }, - "rank": { - "type": "integer", - "description": "the overall rank of this candidate among all candidates of this feature", - "format": "int32" - }, - "csiScore": { - "type": "number", - "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", - "format": "double" - }, - "tanimotoSimilarity": { - "type": "number", - "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", - "format": "double", - "nullable": true - }, - "mcesDistToTopHit": { - "type": "number", - "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", - "format": "double", - "nullable": true - }, - "fingerprint": { - "$ref": "#/components/schemas/BinaryFingerprint" - } - }, - "nullable": true - }, - "StoredJobSubmission": { - "required": [ - "editable", - "jobSubmission", - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Unique name to identify this JobSubmission (job config)." - }, - "editable": { - "type": "boolean", - "description": "False for predefined configs which are not editable and not removable." - }, - "jobSubmission": { - "$ref": "#/components/schemas/JobSubmission" - } - } - }, - "BioTransformerParameters": { - "required": [ - "bioTransformerSequenceSteps", - "cyp450Mode", - "p2Mode" - ], - "type": "object", - "properties": { - "cyp450Mode": { - "type": "string", - "description": "Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.", - "nullable": true, - "default": "COMBINED", - "enum": [ - "RULE_BASED", - "CY_PRODUCT", - "COMBINED" - ] - }, - "p2Mode": { - "type": "string", - "description": "Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.", - "nullable": true, - "default": "BT_RULE_BASED", - "enum": [ - "BT_RULE_BASED", - "P2_RULE_ONLY", - "COMBINED_RULES" - ] - }, - "useDB": { - "type": "boolean", - "description": "\"Specify if you want to enable the retrieving from database (HMDB) feature.\"", - "default": true - }, - "bioTransformerSequenceSteps": { - "type": "array", - "description": "Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).", - "items": { - "$ref": "#/components/schemas/BioTransformerSequenceStep" - } - } - } - }, - "BioTransformerSequenceStep": { - "type": "object", - "properties": { - "metabolicTransformation": { - "type": "string", - "enum": [ - "PHASE_1_CYP450", - "EC_BASED", - "PHASE_2", - "HUMAN_GUT", - "ALL_HUMAN", - "ABIOTIC", - "HUMAN_CUSTOM_MULTI" - ] - }, - "iterations": { - "type": "integer", - "format": "int32" - } - } - }, - "AccountCredentials": { - "type": "object", - "properties": { - "username": { - "type": "string", - "nullable": true - }, - "password": { - "type": "string", - "nullable": true - }, - "refreshToken": { - "type": "string", - "nullable": true - } - }, - "description": "Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service." - }, - "RunOptField": { - "type": "string", - "nullable": true, - "enum": [ - "none", - "tags" - ] - }, - "Run": { - "type": "object", - "properties": { - "runId": { - "type": "string", - "description": "Identifier" - }, - "name": { - "type": "string", - "description": "Informative, human-readable name of this run" - }, - "source": { - "type": "string", - "description": "Source location" - }, - "chromatography": { - "type": "string", - "nullable": true - }, - "ionization": { - "type": "string", - "nullable": true - }, - "fragmentation": { - "type": "string", - "nullable": true - }, - "massAnalyzers": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "tags": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Tag" - }, - "description": "Key: tagName, value: tag", - "nullable": true - } - } - }, - "PageMetadata": { - "type": "object", - "properties": { - "size": { - "type": "integer", - "format": "int64" - }, - "number": { - "type": "integer", - "format": "int64" - }, - "totalElements": { - "type": "integer", - "format": "int64" - }, - "totalPages": { - "type": "integer", - "format": "int64" - } - } - }, - "PagedModelRun": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Run" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelJob": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Job" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "AdductEdgeExperimental": { - "type": "object", - "properties": { - "mzDelta": { - "type": "number", - "format": "double" - }, - "annotation": { - "type": "string" - }, - "from": { - "type": "integer", - "format": "int32" - }, - "to": { - "type": "integer", - "format": "int32" - }, - "mergedCorrelation": { - "type": "number", - "format": "float" - }, - "representativeCorrelation": { - "type": "number", - "format": "float" - }, - "ms2cosine": { - "type": "number", - "format": "float" - }, - "pvalue": { - "type": "number", - "format": "float" - }, - "intensityRatioScore": { - "type": "number", - "format": "float" - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "AdductNetworkExperimental": { - "type": "object", - "properties": { - "nodes": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdductNodeExperimental" - } - }, - "edges": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdductEdgeExperimental" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "AdductNodeExperimental": { - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string" - }, - "mz": { - "type": "number", - "format": "double" - }, - "adductAnnotations": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "Axes": { - "type": "object", - "properties": { - "scanNumber": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - } - }, - "scanIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "retentionTimeInSeconds": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "TraceAnnotationExperimental": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.", - "enum": [ - "FEATURE", - "MS2" - ] - }, - "description": { - "type": "string", - "nullable": true - }, - "index": { - "type": "integer", - "format": "int32" - }, - "from": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "to": { - "type": "integer", - "format": "int32", - "nullable": true - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "TraceExperimental": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "sampleId": { - "type": "string", - "nullable": true - }, - "sampleName": { - "type": "string", - "nullable": true - }, - "label": { - "type": "string" - }, - "color": { - "type": "string" - }, - "intensities": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - }, - "annotations": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TraceAnnotationExperimental" - } - }, - "mz": { - "type": "number", - "format": "double" - }, - "merged": { - "type": "boolean" - }, - "normalizationFactor": { - "type": "number", - "description": "Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.", - "format": "double" - }, - "noiseLevel": { - "type": "number", - "description": "The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.", - "format": "double" - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "TraceSetExperimental": { - "type": "object", - "properties": { - "adductNetwork": { - "$ref": "#/components/schemas/AdductNetworkExperimental" - }, - "sampleId": { - "type": "string" - }, - "sampleName": { - "type": "string" - }, - "axes": { - "$ref": "#/components/schemas/Axes" - }, - "traces": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TraceExperimental" - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "QuantTableExperimental": { - "type": "object", - "properties": { - "quantificationMeasure": { - "type": "string", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - }, - "rowType": { - "type": "string", - "enum": [ - "FEATURES", - "COMPOUNDS" - ] - }, - "rowIds": { - "type": "array", - "nullable": true, - "items": { - "type": "integer", - "format": "int64", - "nullable": true - } - }, - "columnIds": { - "type": "array", - "nullable": true, - "items": { - "type": "integer", - "format": "int64", - "nullable": true - } - }, - "rowNames": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "columnNames": { - "type": "array", - "nullable": true, - "items": { - "type": "string", - "nullable": true - } - }, - "values": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "PagedModelCompound": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Compound" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "FoldChange": { - "required": [ - "foldChange", - "objectId", - "quantType" - ], - "type": "object", - "properties": { - "leftGroup": { - "type": "string" - }, - "rightGroup": { - "type": "string" - }, - "aggregation": { - "type": "string", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - }, - "quantification": { - "type": "string", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - }, - "quantType": { - "type": "string", - "enum": [ - "FEATURES", - "COMPOUNDS" - ] - }, - "objectId": { - "type": "string" - }, - "foldChange": { - "type": "number", - "format": "double" - } - } - }, - "StatisticsTable": { - "type": "object", - "properties": { - "statisticsType": { - "type": "string", - "enum": [ - "FOLD_CHANGE" - ] - }, - "aggregationType": { - "type": "string", - "enum": [ - "AVG", - "MIN", - "MAX" - ] - }, - "quantificationMeasure": { - "type": "string", - "enum": [ - "APEX_INTENSITY", - "AREA_UNDER_CURVE" - ] - }, - "rowType": { - "type": "string", - "enum": [ - "FEATURES", - "COMPOUNDS" - ] - }, - "rowIds": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnNames": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnLeftGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "columnRightGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "values": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - } - } - } - }, - "SpectralLibraryMatchSummary": { - "required": [ - "databaseCompoundCount", - "referenceSpectraCount", - "spectralMatchCount" - ], - "type": "object", - "properties": { - "bestMatch": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - }, - "spectralMatchCount": { - "type": "integer", - "format": "int64" - }, - "referenceSpectraCount": { - "type": "integer", - "format": "int32" - }, - "databaseCompoundCount": { - "type": "integer", - "format": "int32" - } - } - }, - "PagedModelSpectralLibraryMatch": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpectralLibraryMatch" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "AlignedFeatureQualityExperimental": { - "required": [ - "alignedFeatureId", - "categories", - "overallQuality" - ], - "type": "object", - "properties": { - "alignedFeatureId": { - "type": "string", - "description": "Id of the feature (aligned over runs) this quality information belongs to." - }, - "overallQuality": { - "type": "string", - "description": "Overall Quality", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "categories": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/Category" - }, - "description": "Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.," - } - }, - "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." - }, - "Category": { - "type": "object", - "properties": { - "categoryName": { - "type": "string" - }, - "overallQuality": { - "type": "string", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QualityItem" - } - } - } - }, - "QualityItem": { - "type": "object", - "properties": { - "description": { - "type": "string" - }, - "quality": { - "type": "string", - "nullable": true, - "enum": [ - "NOT_APPLICABLE", - "LOWEST", - "BAD", - "DECENT", - "GOOD" - ] - }, - "weight": { - "type": "string", - "enum": [ - "MINOR", - "MAJOR", - "CRITICAL" - ] - } - } - }, - "AnnotatedMsMsData": { - "required": [ - "mergedMs2", - "ms2Spectra" - ], - "type": "object", - "properties": { - "mergedMs2": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - }, - "ms2Spectra": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AnnotatedSpectrum" - } - } - } - }, - "PagedModelStructureCandidateScored": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateScored" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelFormulaCandidate": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/FormulaCandidate" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelStructureCandidateFormula": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/StructureCandidateFormula" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "PagedModelAlignedFeature": { - "type": "object", - "properties": { - "content": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AlignedFeature" - } - }, - "page": { - "$ref": "#/components/schemas/PageMetadata" - } - } - }, - "Info": { - "required": [ - "availableILPSolvers", - "supportedILPSolvers" - ], - "type": "object", - "properties": { - "nightSkyApiVersion": { - "type": "string", - "description": "API version of the SIRIUS Nightsky API", - "nullable": true - }, - "siriusVersion": { - "type": "string", - "description": "Version of the SIRIUS application", - "nullable": true - }, - "latestSiriusVersion": { - "type": "string", - "description": "Latest available Version of the SIRIUS application", - "nullable": true - }, - "latestSiriusLink": { - "type": "string", - "description": "Link to the latest available Version of the SIRIUS application", - "nullable": true - }, - "updateAvailable": { - "type": "boolean", - "description": "true if newer SIRIUS version is available" - }, - "siriusLibVersion": { - "type": "string", - "description": "Version of the SIRIUS libraries", - "nullable": true - }, - "fingerIdLibVersion": { - "type": "string", - "description": "Version of the CSI:FingerID libraries", - "nullable": true - }, - "chemDbVersion": { - "type": "string", - "description": "Version of the Chemical Database available via SIRIUS web services", - "nullable": true - }, - "fingerIdModelVersion": { - "type": "string", - "description": "Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.", - "nullable": true - }, - "fingerprintId": { - "type": "string", - "description": "Version of the Molecular Fingerprint used by SIRIUS", - "nullable": true - }, - "availableILPSolvers": { - "type": "array", - "description": "Set of solvers that are configured correctly and can be loaded", - "items": { - "type": "string", - "enum": [ - "GUROBI", - "CPLEX", - "GLPK", - "CLP" - ] - } - }, - "supportedILPSolvers": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Set of ILP Solvers that are Supported and their version information" - } - } - }, - "ConnectionCheck": { - "required": [ - "errors", - "licenseInfo" - ], - "type": "object", - "properties": { - "licenseInfo": { - "$ref": "#/components/schemas/LicenseInfo" - }, - "errors": { - "type": "array", - "description": "List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors", - "items": { - "$ref": "#/components/schemas/ConnectionError" - } - } - } - }, - "ConnectionError": { - "required": [ - "errorKlass", - "errorType", - "siriusErrorCode", - "siriusMessage" - ], - "type": "object", - "properties": { - "errorType": { - "type": "string", - "enum": [ - "WARNING", - "ERROR" - ] - }, - "errorKlass": { - "type": "string", - "enum": [ - "UNKNOWN", - "INTERNET", - "LOGIN_SERVER", - "LICENSE_SERVER", - "TOKEN", - "LOGIN", - "LICENSE", - "TERMS", - "APP_SERVER" - ] - }, - "siriusErrorCode": { - "type": "integer", - "format": "int32" - }, - "siriusMessage": { - "type": "string" - }, - "serverResponseErrorCode": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "serverResponseErrorMessage": { - "type": "string", - "nullable": true - }, - "error": { - "type": "boolean" - }, - "warning": { - "type": "boolean" - } - } - }, - "LicenseInfo": { - "type": "object", - "properties": { - "userEmail": { - "type": "string", - "description": "Email address of the user account this license information belongs to.", - "nullable": true - }, - "userId": { - "type": "string", - "description": "User ID (uid) of the user account this license information belongs to.", - "nullable": true - }, - "subscription": { - "$ref": "#/components/schemas/Subscription" - }, - "consumables": { - "$ref": "#/components/schemas/SubscriptionConsumables" - }, - "terms": { - "type": "array", - "nullable": true, - "items": { - "$ref": "#/components/schemas/Term" - } - } - } - }, - "SubscriptionConsumables": { - "type": "object", - "properties": { - "pendingJobs": { - "type": "integer", - "format": "int32" - }, - "countedCompounds": { - "type": "integer", - "format": "int32" - } - }, - "nullable": true - }, - "Term": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "link": { - "type": "string", - "format": "uri" - } - }, - "nullable": true - }, - "WebServerNamespace": { - "type": "object", - "properties": { - "value": { - "type": "string" - } - } - }, - "SecurityContext": { - "type": "object", - "properties": { - "principal": { - "type": "object", - "properties": { - "name": { - "type": "string" - } - } - } - } - } - } - } -} \ No newline at end of file +{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"type":"string","description":"Type of this project.\n NULL if project type has not yet been specified by importing data.","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"type":"string","description":"Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"type":"string","description":"Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"inchiKey":{"type":"string"},"referenceSpectrumType":{"type":"string","default":"SPECTRUM","enum":["SPECTRUM","MERGED_SPECTRUM"]},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]}},"nullable":true},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"type":"string","description":"Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.","nullable":true,"enum":["QTOF","ORBITRAP"]},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"type":"string","description":"Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"type":"string","description":"NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.","nullable":true,"deprecated":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"type":"string","description":"Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"type":"string","description":"A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"type":"string","description":"Quality of this feature.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"type":"string","description":"Specifies the classification ontology the CompoundClass belongs to.","nullable":true,"enum":["ClassyFire","NPC"]},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Null if this is a custom selection","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Criterion that was used to select the consensus annotation.","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]}},"nullable":true},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"type":"string","description":"Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"type":"string","description":"Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"p2Mode":{"type":"string","description":"Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"iterations":{"type":"integer","format":"int32"}}},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"type":"string","enum":["AVG","MIN","MAX"]},"quantification":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"quantType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"aggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"type":"string","description":"Overall Quality","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"weight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]}}},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"type":"string","enum":["WARNING","ERROR"]},"errorKlass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file diff --git a/client-api_python/formatting/format_init.sh b/client-api_python/formatting/format_init.sh old mode 100644 new mode 100755 diff --git a/client-api_python/generated/PySirius/api_client.py b/client-api_python/generated/PySirius/api_client.py index 07fed19c..e041ec92 100644 --- a/client-api_python/generated/PySirius/api_client.py +++ b/client-api_python/generated/PySirius/api_client.py @@ -801,4 +801,4 @@ def __deserialize_model(self, data, klass): :return: model object. """ - return klass.from_dict(data) + return klass.from_dict(data) \ No newline at end of file diff --git a/client-api_r/generated/R/api_client.R b/client-api_r/generated/R/api_client.R index 613a620d..47fbdafd 100644 --- a/client-api_r/generated/R/api_client.R +++ b/client-api_r/generated/R/api_client.R @@ -4,418 +4,418 @@ #' #' The version of the OpenAPI document: 3.1 #' Generated by: https://openapi-generator.tech -#' -#' ApiClient Class -#' -#' Generic API client for OpenAPI client library builds. -#' OpenAPI generic API client. This client handles the client- -#' server communication, and is invariant across implementations. Specifics of -#' the methods and models for each application are generated from the OpenAPI Generator -#' templates. -#' -#' NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -#' Ref: https://openapi-generator.tech -#' Do not edit the class manually. -#' -#' @docType class -#' @title ApiClient -#' @description ApiClient Class -#' @format An \code{R6Class} generator object -#' @field base_path Base url -#' @field user_agent Default user agent -#' @field default_headers Default headers -#' @field username Username for HTTP basic authentication -#' @field password Password for HTTP basic authentication -#' @field api_keys API keys -#' @field bearer_token Bearer token -#' @field timeout Default timeout in seconds -#' @field retry_status_codes vector of status codes to retry -#' @field max_retry_attempts maximum number of retries for the status codes -#' @export -ApiClient <- R6::R6Class( - "ApiClient", - public = list( - # base path of all requests - base_path = "http://localhost:8080", - # user agent in the HTTP request - user_agent = "OpenAPI-Generator/6.3.3/r", - # default headers in the HTTP request - default_headers = NULL, - # username (HTTP basic authentication) - username = NULL, - # password (HTTP basic authentication) - password = NULL, - # API keys - api_keys = NULL, - # Bearer token - bearer_token = NULL, - # Time Out (seconds) - timeout = NULL, - # Vector of status codes to retry - retry_status_codes = NULL, - # Maximum number of retry attempts for the retry status codes - max_retry_attempts = NULL, - #' Initialize a new ApiClient. - #' - #' @description - #' Initialize a new ApiClient. - #' - #' @param base_path Base path. - #' @param user_agent User agent. - #' @param default_headers Default headers. - #' @param username User name. - #' @param password Password. - #' @param api_keys API keys. - #' @param access_token Access token. - #' @param bearer_token Bearer token. - #' @param timeout Timeout. - #' @param retry_status_codes Status codes for retry. - #' @param max_retry_attempts Maxmium number of retry. - #' @export - initialize = function(base_path = NULL, user_agent = NULL, - default_headers = NULL, - username = NULL, password = NULL, api_keys = NULL, - access_token = NULL, bearer_token = NULL, timeout = NULL, - retry_status_codes = NULL, max_retry_attempts = NULL) { - if (!is.null(base_path)) { - self$base_path <- base_path - } - - if (!is.null(default_headers)) { - self$default_headers <- default_headers - } - - if (!is.null(username)) { - self$username <- username - } - - if (!is.null(password)) { - self$password <- password - } - - if (!is.null(access_token)) { - self$access_token <- access_token - } - - if (!is.null(bearer_token)) { - self$bearer_token <- bearer_token - } - - if (!is.null(api_keys)) { - self$api_keys <- api_keys - } else { - self$api_keys <- list() - } - - if (!is.null(user_agent)) { - self$`user_agent` <- user_agent - } - - if (!is.null(timeout)) { - self$timeout <- timeout - } - - if (!is.null(retry_status_codes)) { - self$retry_status_codes <- retry_status_codes - } - - if (!is.null(max_retry_attempts)) { - self$max_retry_attempts <- max_retry_attempts - } - }, - #' Prepare to make an API call with the retry logic. - #' - #' @description - #' Prepare to make an API call with the retry logic. - #' - #' @param url URL. - #' @param method HTTP method. - #' @param query_params The query parameters. - #' @param header_params The header parameters. - #' @param form_params The form parameters. - #' @param file_params The form parameters to upload files. - #' @param accepts The HTTP accept headers. - #' @param content_types The HTTP content-type headers. - #' @param body The HTTP request body. - #' @param is_oauth True if the endpoints required OAuth authentication. - #' @param oauth_scopes OAuth scopes. - #' @param stream_callback Callback function to process the data stream. - #' @param ... Other optional arguments. - #' @return HTTP response - #' @export - CallApi = function(url, method, query_params, header_params, form_params, - file_params, accepts, content_types, body, - is_oauth = FALSE, oauth_scopes = NULL, stream_callback = NULL, ...) { - - # set the URL - req <- request(url) - - resp <- self$Execute(req, method, query_params, header_params, form_params, - file_params, accepts, content_types, body, is_oauth = is_oauth, - oauth_scopes = oauth_scopes, stream_callback = stream_callback, ...) - }, - #' Make an API call - #' - #' @description - #' Make an API call - #' - #' @param req httr2 request. - #' @param method HTTP method. - #' @param query_params The query parameters. - #' @param header_params The header parameters. - #' @param form_params The form parameters. - #' @param file_params The form parameters for uploading files. - #' @param accepts The HTTP accept headers. - #' @param content_types The HTTP content-type headers. - #' @param body The HTTP request body. - #' @param is_oauth True if the endpoints required OAuth authentication. - #' @param oauth_scopes OAuth scopes. - #' @param stream_callback Callback function to process data stream. - #' @param ... Other optional arguments. - #' @return HTTP response - #' @export - Execute = function(req, method, query_params, header_params, form_params, - file_params, accepts, content_types, body, - is_oauth = FALSE, oauth_scopes = NULL, stream_callback = NULL, ...) { - - ## add headers - req <- req %>% req_headers(!!!header_params) - - ## add default headers - req <- req %>% req_headers(!!!self$default_headers) - - # set HTTP accept header - accept <- self$select_header(accepts) - if (!is.null(accept)) { - req <- req %>% req_headers("Accept" = accept) - } - - # set HTTP content-type header - content_type <- self$select_header(content_types) - if (!is.null(content_type)) { - req <- req %>% req_headers("Content-Type" = content_type) - } - - ## add query parameters - for (query_param in names(query_params)) { - if (typeof(query_params[[query_param]]) == "list") { - # for explode, e.g. a=1,a=2,a=3 - req <- req %>% req_url_query(!!!query_params[[query_param]]) - } else { # for non-explode, e.g. a=1,2,3 - tmp <- list() - tmp[[query_param]] <- query_params[[query_param]] - req <- req %>% req_url_query(!!!tmp) - } - } - - # has file upload? - if (!is.null(file_params) && length(file_params) != 0) { - # Create multipart body data - multipart_data <- list() - - # Add form parameters first - if (!is.null(form_params) && length(form_params) != 0) { - for (param_name in names(form_params)) { - param_value <- form_params[[param_name]] - is_json <- tryCatch({ - jsonlite::validate(param_value) - }, error = function(e) { - FALSE - }) - - if (is_json) { - multipart_data[[param_name]] <- curl::form_data(param_value, type = "application/json") - } else { - multipart_data[[param_name]] <- param_value - } - } - } - - # Add file parameters - handle multiple files with same name - for (param_name in names(file_params)) { - param_value <- file_params[[param_name]] - - if (is.list(param_value) && length(param_value) > 1) { - # Multiple files with same parameter name - for (i in seq_along(param_value)) { - multipart_data[[length(multipart_data) + 1]] <- param_value[[i]] - names(multipart_data)[length(multipart_data)] <- param_name - } - } else { - # Single file - multipart_data[[param_name]] <- param_value[[1]] - } - } - req <- req %>% req_body_multipart(!!!multipart_data) - } else { # no file upload - # add form parameters via req_body_form - if (!is.null(form_params) && length(form_params) != 0) { - req <- req %>% req_body_form(!!!form_params) - } - } - - # add body parameters - if (!is.null(body)) { - req <- req %>% req_body_raw(body) - } - - # set timeout - if (!is.null(self$timeout)) { - req <- req %>% req_timeout(self$timeout) - } - - # set retry - if (!is.null(self$max_retry_attempts)) { - req <- req %>% retry_max_tries(self$timeout) - req <- req %>% retry_max_seconds(self$timeout) - } - - # set user agent - if (!is.null(self$user_agent)) { - req <- req %>% req_user_agent(self$user_agent) - } - - # set HTTP verb - req <- req %>% req_method(method) - - # stream data - if (typeof(stream_callback) == "closure") { - req %>% req_stream(stream_callback) - } else { - # perform the HTTP request - resp <- req %>% - req_error(is_error = function(resp) FALSE) %>% - req_perform() - - # return ApiResponse - api_response <- ApiResponse$new() - api_response$status_code <- resp %>% resp_status() - api_response$status_code_desc <- resp %>% resp_status_desc() - if (length(resp$body) == 0) { - api_response$response <- NULL - } else { - api_response$response <- resp %>% resp_body_raw() - } - api_response$headers <- resp %>% resp_headers() - - api_response - } - }, - #' Deserialize the content of API response to the given type. - #' - #' @description - #' Deserialize the content of API response to the given type. - #' - #' @param raw_response Raw response. - #' @param return_type R return type. - #' @param pkg_env Package environment. - #' @return Deserialized object. - #' @export - deserialize = function(raw_response, return_type, pkg_env) { - # jsonlite fails with URLs as strings, pass them raw - if (grepl('^(http|https)://', raw_response)) { - resp_obj <- raw_response - } else { - resp_obj <- jsonlite::fromJSON(raw_response) - } - self$deserializeObj(resp_obj, return_type, pkg_env) - }, - #' Deserialize the response from jsonlite object based on the given type. - #' - #' @description - #' Deserialize the response from jsonlite object based on the given type. - #' by handling complex and nested types by iterating recursively - #' Example return_types will be like "array[integer]", "map(Pet)", "array[map(Tag)]", etc. - #' - #' @param obj Response object. - #' @param return_type R return type. - #' @param pkg_env Package environment. - #' @return Deserialized object. - #' @export - deserializeObj = function(obj, return_type, pkg_env) { - return_obj <- NULL - primitive_types <- c("character", "numeric", "integer", "logical", "complex") - - # To handle the "map" type - if (startsWith(return_type, "map(")) { - inner_return_type <- regmatches(return_type, - regexec(pattern = "map\\((.*)\\)", return_type))[[1]][2] - return_obj <- lapply(names(obj), function(name) { - self$deserializeObj(obj[[name]], inner_return_type, pkg_env) - }) - names(return_obj) <- names(obj) - } else if (startsWith(return_type, "array[")) { - # To handle the "array" type - inner_return_type <- regmatches(return_type, - regexec(pattern = "array\\[(.*)\\]", return_type))[[1]][2] - if (c(inner_return_type) %in% primitive_types) { - return_obj <- vector("list", length = length(obj)) - if (length(obj) > 0) { - for (row in 1:length(obj)) { - return_obj[[row]] <- self$deserializeObj(obj[row], inner_return_type, pkg_env) - } - } - } else { - if (!is.null(nrow(obj))) { - return_obj <- vector("list", length = nrow(obj)) - if (nrow(obj) > 0) { - for (row in 1:nrow(obj)) { - return_obj[[row]] <- self$deserializeObj(as.list(obj[row, , drop = FALSE]), - inner_return_type, pkg_env) - } - } - } - } - } else if (exists(return_type, pkg_env) && !(c(return_type) %in% primitive_types)) { - # To handle model objects which are not array or map containers (e.g. Pet) - return_type <- get(return_type, envir = as.environment(pkg_env)) - return_obj <- return_type$new() - # check if discriminator is defined - if (!is.null(return_obj$`_discriminator_property_name`)) { - data_type <- return_obj$`_discriminator_property_name` - # use discriminator mapping if provided - if (!is.null(return_obj$`_discriminator_mapping_name`)) { - data_type <- (return_obj$`_discriminator_mapping_name`)[[obj[[data_type]]]] - } else { - # no mapping provided, use the value directly - data_type <- obj[[data_type]] - } - # create an object of the mapped type (e.g. Cat) - return_type <- get(data_type, envir = as.environment(pkg_env)) - return_obj <- return_type$new() - } - return_obj$fromJSON( - jsonlite::toJSON(obj, digits = NA, auto_unbox = TRUE, null = 'null', na = 'null') - ) - } else { - # To handle primitive type - return_obj <- obj - } - return_obj - }, - #' Return a property header (for accept or content-type). - #' - #' @description - #' Return a property header (for accept or content-type). If JSON-related MIME is found, - #' return it. Otherwise, return the first one, if any. - #' - #' @param headers A list of headers - #' @return A header (e.g. 'application/json') - #' @export - select_header = function(headers) { - if (length(headers) == 0) { - return(invisible(NULL)) - } else { - for (header in headers) { - if (str_detect(header, "(?i)^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$")) { - # return JSON-related MIME - return(header) - } - } - - # not json mime type, simply return the first one - return(headers[[1]]) - } - } - ) -) +#' +#' ApiClient Class +#' +#' Generic API client for OpenAPI client library builds. +#' OpenAPI generic API client. This client handles the client- +#' server communication, and is invariant across implementations. Specifics of +#' the methods and models for each application are generated from the OpenAPI Generator +#' templates. +#' +#' NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). +#' Ref: https://openapi-generator.tech +#' Do not edit the class manually. +#' +#' @docType class +#' @title ApiClient +#' @description ApiClient Class +#' @format An \code{R6Class} generator object +#' @field base_path Base url +#' @field user_agent Default user agent +#' @field default_headers Default headers +#' @field username Username for HTTP basic authentication +#' @field password Password for HTTP basic authentication +#' @field api_keys API keys +#' @field bearer_token Bearer token +#' @field timeout Default timeout in seconds +#' @field retry_status_codes vector of status codes to retry +#' @field max_retry_attempts maximum number of retries for the status codes +#' @export +ApiClient <- R6::R6Class( + "ApiClient", + public = list( + # base path of all requests + base_path = "http://localhost:8080", + # user agent in the HTTP request + user_agent = "OpenAPI-Generator/6.3.3/r", + # default headers in the HTTP request + default_headers = NULL, + # username (HTTP basic authentication) + username = NULL, + # password (HTTP basic authentication) + password = NULL, + # API keys + api_keys = NULL, + # Bearer token + bearer_token = NULL, + # Time Out (seconds) + timeout = NULL, + # Vector of status codes to retry + retry_status_codes = NULL, + # Maximum number of retry attempts for the retry status codes + max_retry_attempts = NULL, + #' Initialize a new ApiClient. + #' + #' @description + #' Initialize a new ApiClient. + #' + #' @param base_path Base path. + #' @param user_agent User agent. + #' @param default_headers Default headers. + #' @param username User name. + #' @param password Password. + #' @param api_keys API keys. + #' @param access_token Access token. + #' @param bearer_token Bearer token. + #' @param timeout Timeout. + #' @param retry_status_codes Status codes for retry. + #' @param max_retry_attempts Maxmium number of retry. + #' @export + initialize = function(base_path = NULL, user_agent = NULL, + default_headers = NULL, + username = NULL, password = NULL, api_keys = NULL, + access_token = NULL, bearer_token = NULL, timeout = NULL, + retry_status_codes = NULL, max_retry_attempts = NULL) { + if (!is.null(base_path)) { + self$base_path <- base_path + } + + if (!is.null(default_headers)) { + self$default_headers <- default_headers + } + + if (!is.null(username)) { + self$username <- username + } + + if (!is.null(password)) { + self$password <- password + } + + if (!is.null(access_token)) { + self$access_token <- access_token + } + + if (!is.null(bearer_token)) { + self$bearer_token <- bearer_token + } + + if (!is.null(api_keys)) { + self$api_keys <- api_keys + } else { + self$api_keys <- list() + } + + if (!is.null(user_agent)) { + self$`user_agent` <- user_agent + } + + if (!is.null(timeout)) { + self$timeout <- timeout + } + + if (!is.null(retry_status_codes)) { + self$retry_status_codes <- retry_status_codes + } + + if (!is.null(max_retry_attempts)) { + self$max_retry_attempts <- max_retry_attempts + } + }, + #' Prepare to make an API call with the retry logic. + #' + #' @description + #' Prepare to make an API call with the retry logic. + #' + #' @param url URL. + #' @param method HTTP method. + #' @param query_params The query parameters. + #' @param header_params The header parameters. + #' @param form_params The form parameters. + #' @param file_params The form parameters to upload files. + #' @param accepts The HTTP accept headers. + #' @param content_types The HTTP content-type headers. + #' @param body The HTTP request body. + #' @param is_oauth True if the endpoints required OAuth authentication. + #' @param oauth_scopes OAuth scopes. + #' @param stream_callback Callback function to process the data stream. + #' @param ... Other optional arguments. + #' @return HTTP response + #' @export + CallApi = function(url, method, query_params, header_params, form_params, + file_params, accepts, content_types, body, + is_oauth = FALSE, oauth_scopes = NULL, stream_callback = NULL, ...) { + + # set the URL + req <- request(url) + + resp <- self$Execute(req, method, query_params, header_params, form_params, + file_params, accepts, content_types, body, is_oauth = is_oauth, + oauth_scopes = oauth_scopes, stream_callback = stream_callback, ...) + }, + #' Make an API call + #' + #' @description + #' Make an API call + #' + #' @param req httr2 request. + #' @param method HTTP method. + #' @param query_params The query parameters. + #' @param header_params The header parameters. + #' @param form_params The form parameters. + #' @param file_params The form parameters for uploading files. + #' @param accepts The HTTP accept headers. + #' @param content_types The HTTP content-type headers. + #' @param body The HTTP request body. + #' @param is_oauth True if the endpoints required OAuth authentication. + #' @param oauth_scopes OAuth scopes. + #' @param stream_callback Callback function to process data stream. + #' @param ... Other optional arguments. + #' @return HTTP response + #' @export + Execute = function(req, method, query_params, header_params, form_params, + file_params, accepts, content_types, body, + is_oauth = FALSE, oauth_scopes = NULL, stream_callback = NULL, ...) { + + ## add headers + req <- req %>% req_headers(!!!header_params) + + ## add default headers + req <- req %>% req_headers(!!!self$default_headers) + + # set HTTP accept header + accept <- self$select_header(accepts) + if (!is.null(accept)) { + req <- req %>% req_headers("Accept" = accept) + } + + # set HTTP content-type header + content_type <- self$select_header(content_types) + if (!is.null(content_type)) { + req <- req %>% req_headers("Content-Type" = content_type) + } + + ## add query parameters + for (query_param in names(query_params)) { + if (typeof(query_params[[query_param]]) == "list") { + # for explode, e.g. a=1,a=2,a=3 + req <- req %>% req_url_query(!!!query_params[[query_param]]) + } else { # for non-explode, e.g. a=1,2,3 + tmp <- list() + tmp[[query_param]] <- query_params[[query_param]] + req <- req %>% req_url_query(!!!tmp) + } + } + + # has file upload? + if (!is.null(file_params) && length(file_params) != 0) { + # Create multipart body data + multipart_data <- list() + + # Add form parameters first + if (!is.null(form_params) && length(form_params) != 0) { + for (param_name in names(form_params)) { + param_value <- form_params[[param_name]] + is_json <- tryCatch({ + jsonlite::validate(param_value) + }, error = function(e) { + FALSE + }) + + if (is_json) { + multipart_data[[param_name]] <- curl::form_data(param_value, type = "application/json") + } else { + multipart_data[[param_name]] <- param_value + } + } + } + + # Add file parameters - handle multiple files with same name + for (param_name in names(file_params)) { + param_value <- file_params[[param_name]] + + if (is.list(param_value) && length(param_value) > 1) { + # Multiple files with same parameter name + for (i in seq_along(param_value)) { + multipart_data[[length(multipart_data) + 1]] <- param_value[[i]] + names(multipart_data)[length(multipart_data)] <- param_name + } + } else { + # Single file + multipart_data[[param_name]] <- param_value[[1]] + } + } + req <- req %>% req_body_multipart(!!!multipart_data) + } else { # no file upload + # add form parameters via req_body_form + if (!is.null(form_params) && length(form_params) != 0) { + req <- req %>% req_body_form(!!!form_params) + } + } + + # add body parameters + if (!is.null(body)) { + req <- req %>% req_body_raw(body) + } + + # set timeout + if (!is.null(self$timeout)) { + req <- req %>% req_timeout(self$timeout) + } + + # set retry + if (!is.null(self$max_retry_attempts)) { + req <- req %>% retry_max_tries(self$timeout) + req <- req %>% retry_max_seconds(self$timeout) + } + + # set user agent + if (!is.null(self$user_agent)) { + req <- req %>% req_user_agent(self$user_agent) + } + + # set HTTP verb + req <- req %>% req_method(method) + + # stream data + if (typeof(stream_callback) == "closure") { + req %>% req_stream(stream_callback) + } else { + # perform the HTTP request + resp <- req %>% + req_error(is_error = function(resp) FALSE) %>% + req_perform() + + # return ApiResponse + api_response <- ApiResponse$new() + api_response$status_code <- resp %>% resp_status() + api_response$status_code_desc <- resp %>% resp_status_desc() + if (length(resp$body) == 0) { + api_response$response <- NULL + } else { + api_response$response <- resp %>% resp_body_raw() + } + api_response$headers <- resp %>% resp_headers() + + api_response + } + }, + #' Deserialize the content of API response to the given type. + #' + #' @description + #' Deserialize the content of API response to the given type. + #' + #' @param raw_response Raw response. + #' @param return_type R return type. + #' @param pkg_env Package environment. + #' @return Deserialized object. + #' @export + deserialize = function(raw_response, return_type, pkg_env) { + # jsonlite fails with URLs as strings, pass them raw + if (grepl('^(http|https)://', raw_response)) { + resp_obj <- raw_response + } else { + resp_obj <- jsonlite::fromJSON(raw_response) + } + self$deserializeObj(resp_obj, return_type, pkg_env) + }, + #' Deserialize the response from jsonlite object based on the given type. + #' + #' @description + #' Deserialize the response from jsonlite object based on the given type. + #' by handling complex and nested types by iterating recursively + #' Example return_types will be like "array[integer]", "map(Pet)", "array[map(Tag)]", etc. + #' + #' @param obj Response object. + #' @param return_type R return type. + #' @param pkg_env Package environment. + #' @return Deserialized object. + #' @export + deserializeObj = function(obj, return_type, pkg_env) { + return_obj <- NULL + primitive_types <- c("character", "numeric", "integer", "logical", "complex") + + # To handle the "map" type + if (startsWith(return_type, "map(")) { + inner_return_type <- regmatches(return_type, + regexec(pattern = "map\\((.*)\\)", return_type))[[1]][2] + return_obj <- lapply(names(obj), function(name) { + self$deserializeObj(obj[[name]], inner_return_type, pkg_env) + }) + names(return_obj) <- names(obj) + } else if (startsWith(return_type, "array[")) { + # To handle the "array" type + inner_return_type <- regmatches(return_type, + regexec(pattern = "array\\[(.*)\\]", return_type))[[1]][2] + if (c(inner_return_type) %in% primitive_types) { + return_obj <- vector("list", length = length(obj)) + if (length(obj) > 0) { + for (row in 1:length(obj)) { + return_obj[[row]] <- self$deserializeObj(obj[row], inner_return_type, pkg_env) + } + } + } else { + if (!is.null(nrow(obj))) { + return_obj <- vector("list", length = nrow(obj)) + if (nrow(obj) > 0) { + for (row in 1:nrow(obj)) { + return_obj[[row]] <- self$deserializeObj(as.list(obj[row, , drop = FALSE]), + inner_return_type, pkg_env) + } + } + } + } + } else if (exists(return_type, pkg_env) && !(c(return_type) %in% primitive_types)) { + # To handle model objects which are not array or map containers (e.g. Pet) + return_type <- get(return_type, envir = as.environment(pkg_env)) + return_obj <- return_type$new() + # check if discriminator is defined + if (!is.null(return_obj$`_discriminator_property_name`)) { + data_type <- return_obj$`_discriminator_property_name` + # use discriminator mapping if provided + if (!is.null(return_obj$`_discriminator_mapping_name`)) { + data_type <- (return_obj$`_discriminator_mapping_name`)[[obj[[data_type]]]] + } else { + # no mapping provided, use the value directly + data_type <- obj[[data_type]] + } + # create an object of the mapped type (e.g. Cat) + return_type <- get(data_type, envir = as.environment(pkg_env)) + return_obj <- return_type$new() + } + return_obj$fromJSON( + jsonlite::toJSON(obj, digits = NA, auto_unbox = TRUE, null = 'null', na = 'null') + ) + } else { + # To handle primitive type + return_obj <- obj + } + return_obj + }, + #' Return a property header (for accept or content-type). + #' + #' @description + #' Return a property header (for accept or content-type). If JSON-related MIME is found, + #' return it. Otherwise, return the first one, if any. + #' + #' @param headers A list of headers + #' @return A header (e.g. 'application/json') + #' @export + select_header = function(headers) { + if (length(headers) == 0) { + return(invisible(NULL)) + } else { + for (header in headers) { + if (str_detect(header, "(?i)^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$")) { + # return JSON-related MIME + return(header) + } + } + + # not json mime type, simply return the first one + return(headers[[1]]) + } + } + ) +) diff --git a/client-api_r/generated/R/rsirius_sdk.R b/client-api_r/generated/R/rsirius_sdk.R index fe069d10..92789c8b 100644 --- a/client-api_r/generated/R/rsirius_sdk.R +++ b/client-api_r/generated/R/rsirius_sdk.R @@ -1,435 +1,435 @@ -SiriusSDK <- R6::R6Class( - "SiriusSDK", - public = list( - port = NULL, - host = NULL, - sirius_path = NULL, - projectspace = NULL, - workspace = NULL, - process = NULL, - process_id = NULL, - api_client = NULL, - run_command = NULL, - run_args = NULL, - - reset_sdk_class = function() { - self$port <- NULL - self$host <- NULL - self$sirius_path <- NULL - self$projectspace <- NULL - self$workspace <- NULL - self$process <- NULL - self$process_id <- NULL - self$api_client <- NULL - self$run_command <- NULL - self$run_args <- NULL - }, - - reset_sdk_process = function() { - self$process <- NULL - self$process_id <- NULL - }, - - connect = function(url) { - self$host <- url - self$api_client <- RSirius::ApiClient$new(self$host) - return(RSirius::rsirius_api$new(self$api_client)) - }, - - reconnect = function() { - if (!is.null(self$api_client) && !is.null(self$process) && self$process$is_alive()) { - return(RSirius::rsirius_api(self$api_client)) - } - cat("Cannot reconnect, api_client and/or process are NULL or process has terminated.\n") - return() - }, - - restart_sirius = function() { - if (!is.null(self$run_command) && !is.null(self$run_args) && !is.null(self$process) && !is.null(self$api_client)) { - if (inherits(self$shutdown_sirius(), "logical")) { - cat("Shutdown seems to have gone wrong, aborting restart...\n") - return() - } - - self$process <- processx::process$new(command = self$run_command, args = self$run_args) - for (i in 1:60) { - Sys.sleep(1) - tryCatch({ - if (self$process$is_alive()) { - found <- private$cycle_find_sirius_pid_and_port() - if (!found) { - cat("Could not find sirius.port file. Please terminate SIRIUS if needed and try specifying a port\n") - cat("Alternatively, try attaching to a running SIRIUS instance with attach_to_running_sirius()\n") - return() - } - # connect() sets self$host and self$api_client - host <- paste0('http://localhost:', self$port) - sirius_api <- self$connect(host) - return(sirius_api) - } else { - cat("The SIRIUS process seems to have exited during startup. Please investigate this error.\n") - self$reset_sdk_class() - } - }, error = function(e) { - cat(e$message, "\n") - }) - } - - cat("SIRIUS seems to have problems starting. Resetting SiriusSDK...\n") - self$reset_sdk_class() - return() - } - cat("Could not attempt REST restart, run_command, run_args, process or api_client are NULL.\n") - return() - }, - - attach_or_start_sirius = function(headless = NULL) { - sirius_api <- self$attach_to_sirius() - # attachment encountered issue - if (is.logical(sirius_api)) { - return() - } - # attachment did not encounter issue but also found no SIRIUS - else if (is.null(sirius_api)) { - sirius_api <- self$start_sirius(headless = headless) - } - # attachment successful - else { - message("Attached to running SIRIUS instance.") - } - return(sirius_api) - }, - - attach_to_sirius = function(sirius_major_version = NULL, sirius_port = NULL) { - - # check if connection to API client is possible - if (!is.null(self$api_client)) { - tryCatch({ - if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { - return(RSirius::rsirius_api$new(self$api_client)) - } - }, error = function(e) { - message("Found existing API Client, but could not reach API.") - }) - } - - # create and check API client from existing port - if (!is.null(self$port)) { - self$host <- paste0('http://localhost:', self$port) - sirius_api <- self$connect(self$host) - self$api_client <- sirius_api$api_client - tryCatch({ - if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { - return(RSirius::rsirius_api$new(self$api_client)) - } - }, error = function(e) { - message("Found existing port, but could not reach API under this port.") - }) - } - - # if client is not reachable, search for process and kill if necessary - if (!is.null(self$process)) { - if (self$process$is_alive()) { - message("The SIRIUS process still seems to be lingering, but no connection could be made to the API.") - message("Shutting down the process...") - if (inherits(self$shutdown_sirius(), "logical")) { - # before error messages will be done by shutdown function - message("Aborting....") - return(FALSE) - } - message("Process shut down successfully.") - } else { - message("Known process seems to have terminated at some time.") - } - } - - self$reset_sdk_class() - message("SiriusSDK has been reset. Continuing with search for new SIRIUS instance...") - - if (!is.null(sirius_port)) { - self$port <- sirius_port - } else { - found <- private$find_sirius_pid_and_port(sirius_major_version) - if (!found) { - message("No port file matching ~/.sirius/sirius-X.X.port was found.") - message("Please try providing the port.") - return() - } - } - - self$host <- paste0('http://localhost:', self$port) - sirius_api <- self$connect(self$host) - self$api_client <- sirius_api$api_client - - tryCatch({ - if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { - return(RSirius::rsirius_api$new(self$api_client)) - } - }, error = function(e) { - message("Created API client from process_id and port, but could not reach API.") - }) - - message("Files for SIRIUS process_id and port have been found, but do not belong to an alive API.") - message("Process_id and port files will be deleted and start_sirius will be called.") - private$delete_sirius_pid_and_port(sirius_major_version) - self$reset_sdk_class() - - return() - }, - - start_sirius = function(sirius_path = NULL, port = NULL, projectspace = NULL, workspace = NULL, forceStart = FALSE, headless = NULL) { - if (!is.null(self$process) && !forceStart) { - cat("Sirius seems to have already been started with PID:", self$process$get_pid(), ".\n") - cat("Use reconnect() to get a new API instance for your current SIRIUS.\n") - cat("Use shutdown_sirius() and then start_sirius() to restart SIRIUS and get a new API instance.\n") - cat("If you are sure the process is not running anymore, use reset_sdk_process() or reset the complete SDK using reset_sdk_class() before calling start() again.\n") - cat("[NOT RECOMMENDED] Use start with forceStart=TRUE to skip this warning and start a second service.\n") - return() - } - - self$workspace <- workspace - - if (!is.null(sirius_path)) { - if (!file.exists(sirius_path)) { - cat("Wrong path to executable.\n") - self$reset_sdk_class() - return() - } - self$sirius_path <- normalizePath(sirius_path) - } else { - if (Sys.getenv("PATH") == "" || !grepl("sirius", Sys.getenv("PATH"))) { - cat("Please provide a path to the sirius executable if not declared in PATH!\n") - self$reset_sdk_class() - return() - } - cat("Found SIRIUS in PATH! Using this information to start the application.\n") - self$sirius_path <- 'sirius' - } - - if (!is.null(projectspace)) { - if (!file.exists(projectspace)) { - cat("Wrong path to project space.\n") - self$reset_sdk_class() - return() - } - self$projectspace <- normalizePath(projectspace) - run_args <- c("--output", self$projectspace, "REST", "-s") - } else { - run_args <- c("REST", "-s") - } - - if (!is.null(workspace)) { - if (!file.exists(workspace)) { - cat("Wrong path to workspace\n") - self$reset_sdk_class() - return() - } - cat("[WARNING] Overwriting workspace location [NOT RECOMMENDED]\n") - self$workspace <- normalizePath(workspace) - run_args <- append(run_args, c("--workspace", workspace), 0) - } - - if (!is.null(port)) { - self$port <- port - run_args <- append(run_args, c("-p", as.character(port))) - } - - if (!is.null(headless) && headless == TRUE) { - run_args <- append(run_args, "--headless") - } else if (!is.null(headless) && headless == FALSE) { - run_args <- append(run_args, "--no-headless") - } - - self$run_command <- self$sirius_path - self$run_args <- run_args - self$process <- processx::process$new(command = self$run_command, args = self$run_args) - self$process_id <- self$process$get_pid() - - if (is.null(port)) { - cat("SIRIUS was started without specifying --port (-p), trying to find the sirius.port file.\n") - if (is.null(workspace)) { - found <- private$cycle_find_sirius_pid_and_port() - } else { - found <- private$cycle_find_sirius_pid_and_port(folder = workspace) - } - if (!found) { - cat("Could not find sirius.port file. Please terminate SIRIUS if needed and try specifying a port\n") - cat("Alternatively, try attaching to a running SIRIUS instance with attach_to_running_sirius()\n") - return() - } - } - - self$host <- paste0('http://localhost:', self$port) - sirius_api <- self$connect(self$host) - self$api_client <- sirius_api$api_client - - for (i in 1:30) { - Sys.sleep(1) - tryCatch({ - if (self$process$is_alive()) { - if (sirius_api$actuator_api$Health()$status == "UP") { - return(sirius_api) - } - } else { - cat("The SIRIUS process seems to have exited during startup. Please investigate this error.\n") - self$reset_sdk_class() - } - }, error = function(e) { - cat(e$message, "\n") - }) - } - - cat("SIRIUS seems to have problems starting. Resetting SiriusSDK...\n") - self$reset_sdk_class() - return() - }, - - shutdown_sirius = function() { - - tryCatch({ - code <- RSirius::ActuatorApi$new(self$api_client)$ShutdownWithHttpInfo()$status_code - Sys.sleep(3) - if (code == 200) { - cat("Sirius was shut down successfully\n") - self$reset_sdk_process() - return() - } - }, error = function(e) { - cat("An Exception occurred while trying to gracefully shutdown SIRIUS!\n") - cat(e$message, "\n") - }) - - if (!is.null(self$process)) { - self$process$interrupt() - Sys.sleep(3) - if (!self$process$is_alive()) { - cat("Sirius process has been terminated.\n") - self$reset_sdk_process() - return() - } - - self$process$kill() - Sys.sleep(3) - if (!self$process$is_alive()) { - cat("Sirius process has been killed.\n") - self$reset_sdk_process() - return() - } - - cat("Unable to stop Sirius! - Please manually terminate the process with PID ", self$process$get_pid(), "\n") - cat("After terminating the process, use start_sirius() to start a new instance of SIRIUS.\n") - return(FALSE) - } else if (!is.null(self$process_id)) { - system(paste("kill -SIGTERM", self$process_id)) - Sys.sleep(3) - tryCatch({ - system(paste("kill -0", self$process_id)) - }, error = function(e) { - cat("Sirius process has been terminated.\n") - self$reset_sdk_process() - return() - }) - - system(paste("kill -SIGKILL", self$process_id)) - Sys.sleep(3) - tryCatch({ - system(paste("kill -0", self$process_id)) - }, error = function(e) { - cat("Sirius process has been killed.\n") - self$reset_sdk_process() - return() - }) - - cat("Unable to stop Sirius! - Please manually terminate the process with PID ", self$process_id, "\n") - cat("After terminating the process, use start_sirius() to start a new instance of SIRIUS.\n") - return(FALSE) - } else { - cat("There does not seem to be any process or process_id to shut down...\n") - return(FALSE) - } - } - ), - - private = list( - are_all_vars_none = function() { - all_names <- ls(envir = self, all.names = TRUE) - # exclude functions - field_names <- all_names[sapply(all_names, function(name) !is.function(self[[name]]))] - # exclude ".__enclos_env__" - field_names <- field_names[-1] - all(sapply(field_names, function(name) is.null(self[[name]]))) - }, - - find_sirius_pid_and_port = function(sirius_version = NULL) { - result = private$get_sirius_pid_and_port(sirius_version) - if (is.logical(result)) { - return(FALSE) - } - pid_file = result[[1]] - port_file = result[[2]] - pid <- as.integer(readLines(pid_file, warn = FALSE)) - port <- as.integer(readLines(port_file, warn = FALSE)) - - self$process_id <- pid - self$port <- port - - message("Using port ", port, " from file ", port_file) - message("Using PID ", pid, " from file ", pid_file) - return(TRUE) - }, - - delete_sirius_pid_and_port = function(sirius_version = NULL) { - result = private$get_sirius_pid_and_port(sirius_version) - if (is.logical(result)) { - return(FALSE) - } - pid_file = result[[1]] - port_file = result[[2]] - file.remove(pid_file) - file.remove (port_file) - }, - - get_sirius_pid_and_port = function(sirius_version = NULL) { - if (Sys.info()['sysname']=="Windows") { - global_workspace <- file.path(Sys.getenv("USERPROFILE"), ".sirius") - } else { - global_workspace <- path.expand("~/.sirius") - } - - if (is.null(sirius_version) || sirius_version == "None") { - port_pattern_match <- "[0-9]*" - } else { - port_pattern_match <- sirius_version - } - - port_pattern <- file.path(global_workspace, paste0("sirius-", port_pattern_match, ".port")) - port_files <- Sys.glob(port_pattern) - - if (length(port_files) == 0) { - return(FALSE) - } - - if (length(port_files) > 1) { - message("Following sirius port files detected:") - for (f in port_files) { - message(f) - } - } - - port_file <- sort(port_files)[length(port_files)] - pid_file <- sub(".port$", ".pid", port_file) - - return(c(pid_file, port_file)) - }, - - cycle_find_sirius_pid_and_port = function() { - for (i in 1:30) { - Sys.sleep(1) - if (private$find_sirius_pid_and_port()) { - return(TRUE) - } - } - return(FALSE) - } - ) -) +SiriusSDK <- R6::R6Class( + "SiriusSDK", + public = list( + port = NULL, + host = NULL, + sirius_path = NULL, + projectspace = NULL, + workspace = NULL, + process = NULL, + process_id = NULL, + api_client = NULL, + run_command = NULL, + run_args = NULL, + + reset_sdk_class = function() { + self$port <- NULL + self$host <- NULL + self$sirius_path <- NULL + self$projectspace <- NULL + self$workspace <- NULL + self$process <- NULL + self$process_id <- NULL + self$api_client <- NULL + self$run_command <- NULL + self$run_args <- NULL + }, + + reset_sdk_process = function() { + self$process <- NULL + self$process_id <- NULL + }, + + connect = function(url) { + self$host <- url + self$api_client <- RSirius::ApiClient$new(self$host) + return(RSirius::rsirius_api$new(self$api_client)) + }, + + reconnect = function() { + if (!is.null(self$api_client) && !is.null(self$process) && self$process$is_alive()) { + return(RSirius::rsirius_api(self$api_client)) + } + cat("Cannot reconnect, api_client and/or process are NULL or process has terminated.\n") + return() + }, + + restart_sirius = function() { + if (!is.null(self$run_command) && !is.null(self$run_args) && !is.null(self$process) && !is.null(self$api_client)) { + if (inherits(self$shutdown_sirius(), "logical")) { + cat("Shutdown seems to have gone wrong, aborting restart...\n") + return() + } + + self$process <- processx::process$new(command = self$run_command, args = self$run_args) + for (i in 1:60) { + Sys.sleep(1) + tryCatch({ + if (self$process$is_alive()) { + found <- private$cycle_find_sirius_pid_and_port() + if (!found) { + cat("Could not find sirius.port file. Please terminate SIRIUS if needed and try specifying a port\n") + cat("Alternatively, try attaching to a running SIRIUS instance with attach_to_running_sirius()\n") + return() + } + # connect() sets self$host and self$api_client + host <- paste0('http://localhost:', self$port) + sirius_api <- self$connect(host) + return(sirius_api) + } else { + cat("The SIRIUS process seems to have exited during startup. Please investigate this error.\n") + self$reset_sdk_class() + } + }, error = function(e) { + cat(e$message, "\n") + }) + } + + cat("SIRIUS seems to have problems starting. Resetting SiriusSDK...\n") + self$reset_sdk_class() + return() + } + cat("Could not attempt REST restart, run_command, run_args, process or api_client are NULL.\n") + return() + }, + + attach_or_start_sirius = function(headless = NULL) { + sirius_api <- self$attach_to_sirius() + # attachment encountered issue + if (is.logical(sirius_api)) { + return() + } + # attachment did not encounter issue but also found no SIRIUS + else if (is.null(sirius_api)) { + sirius_api <- self$start_sirius(headless = headless) + } + # attachment successful + else { + message("Attached to running SIRIUS instance.") + } + return(sirius_api) + }, + + attach_to_sirius = function(sirius_major_version = NULL, sirius_port = NULL) { + + # check if connection to API client is possible + if (!is.null(self$api_client)) { + tryCatch({ + if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { + return(RSirius::rsirius_api$new(self$api_client)) + } + }, error = function(e) { + message("Found existing API Client, but could not reach API.") + }) + } + + # create and check API client from existing port + if (!is.null(self$port)) { + self$host <- paste0('http://localhost:', self$port) + sirius_api <- self$connect(self$host) + self$api_client <- sirius_api$api_client + tryCatch({ + if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { + return(RSirius::rsirius_api$new(self$api_client)) + } + }, error = function(e) { + message("Found existing port, but could not reach API under this port.") + }) + } + + # if client is not reachable, search for process and kill if necessary + if (!is.null(self$process)) { + if (self$process$is_alive()) { + message("The SIRIUS process still seems to be lingering, but no connection could be made to the API.") + message("Shutting down the process...") + if (inherits(self$shutdown_sirius(), "logical")) { + # before error messages will be done by shutdown function + message("Aborting....") + return(FALSE) + } + message("Process shut down successfully.") + } else { + message("Known process seems to have terminated at some time.") + } + } + + self$reset_sdk_class() + message("SiriusSDK has been reset. Continuing with search for new SIRIUS instance...") + + if (!is.null(sirius_port)) { + self$port <- sirius_port + } else { + found <- private$find_sirius_pid_and_port(sirius_major_version) + if (!found) { + message("No port file matching ~/.sirius/sirius-X.X.port was found.") + message("Please try providing the port.") + return() + } + } + + self$host <- paste0('http://localhost:', self$port) + sirius_api <- self$connect(self$host) + self$api_client <- sirius_api$api_client + + tryCatch({ + if (RSirius::ActuatorApi$new(self$api_client)$Health()$status == "UP") { + return(RSirius::rsirius_api$new(self$api_client)) + } + }, error = function(e) { + message("Created API client from process_id and port, but could not reach API.") + }) + + message("Files for SIRIUS process_id and port have been found, but do not belong to an alive API.") + message("Process_id and port files will be deleted and start_sirius will be called.") + private$delete_sirius_pid_and_port(sirius_major_version) + self$reset_sdk_class() + + return() + }, + + start_sirius = function(sirius_path = NULL, port = NULL, projectspace = NULL, workspace = NULL, forceStart = FALSE, headless = NULL) { + if (!is.null(self$process) && !forceStart) { + cat("Sirius seems to have already been started with PID:", self$process$get_pid(), ".\n") + cat("Use reconnect() to get a new API instance for your current SIRIUS.\n") + cat("Use shutdown_sirius() and then start_sirius() to restart SIRIUS and get a new API instance.\n") + cat("If you are sure the process is not running anymore, use reset_sdk_process() or reset the complete SDK using reset_sdk_class() before calling start() again.\n") + cat("[NOT RECOMMENDED] Use start with forceStart=TRUE to skip this warning and start a second service.\n") + return() + } + + self$workspace <- workspace + + if (!is.null(sirius_path)) { + if (!file.exists(sirius_path)) { + cat("Wrong path to executable.\n") + self$reset_sdk_class() + return() + } + self$sirius_path <- normalizePath(sirius_path) + } else { + if (Sys.getenv("PATH") == "" || !grepl("sirius", Sys.getenv("PATH"))) { + cat("Please provide a path to the sirius executable if not declared in PATH!\n") + self$reset_sdk_class() + return() + } + cat("Found SIRIUS in PATH! Using this information to start the application.\n") + self$sirius_path <- 'sirius' + } + + if (!is.null(projectspace)) { + if (!file.exists(projectspace)) { + cat("Wrong path to project space.\n") + self$reset_sdk_class() + return() + } + self$projectspace <- normalizePath(projectspace) + run_args <- c("--output", self$projectspace, "REST", "-s") + } else { + run_args <- c("REST", "-s") + } + + if (!is.null(workspace)) { + if (!file.exists(workspace)) { + cat("Wrong path to workspace\n") + self$reset_sdk_class() + return() + } + cat("[WARNING] Overwriting workspace location [NOT RECOMMENDED]\n") + self$workspace <- normalizePath(workspace) + run_args <- append(run_args, c("--workspace", workspace), 0) + } + + if (!is.null(port)) { + self$port <- port + run_args <- append(run_args, c("-p", as.character(port))) + } + + if (!is.null(headless) && headless == TRUE) { + run_args <- append(run_args, "--headless") + } else if (!is.null(headless) && headless == FALSE) { + run_args <- append(run_args, "--no-headless") + } + + self$run_command <- self$sirius_path + self$run_args <- run_args + self$process <- processx::process$new(command = self$run_command, args = self$run_args) + self$process_id <- self$process$get_pid() + + if (is.null(port)) { + cat("SIRIUS was started without specifying --port (-p), trying to find the sirius.port file.\n") + if (is.null(workspace)) { + found <- private$cycle_find_sirius_pid_and_port() + } else { + found <- private$cycle_find_sirius_pid_and_port(folder = workspace) + } + if (!found) { + cat("Could not find sirius.port file. Please terminate SIRIUS if needed and try specifying a port\n") + cat("Alternatively, try attaching to a running SIRIUS instance with attach_to_running_sirius()\n") + return() + } + } + + self$host <- paste0('http://localhost:', self$port) + sirius_api <- self$connect(self$host) + self$api_client <- sirius_api$api_client + + for (i in 1:30) { + Sys.sleep(1) + tryCatch({ + if (self$process$is_alive()) { + if (sirius_api$actuator_api$Health()$status == "UP") { + return(sirius_api) + } + } else { + cat("The SIRIUS process seems to have exited during startup. Please investigate this error.\n") + self$reset_sdk_class() + } + }, error = function(e) { + cat(e$message, "\n") + }) + } + + cat("SIRIUS seems to have problems starting. Resetting SiriusSDK...\n") + self$reset_sdk_class() + return() + }, + + shutdown_sirius = function() { + + tryCatch({ + code <- RSirius::ActuatorApi$new(self$api_client)$ShutdownWithHttpInfo()$status_code + Sys.sleep(3) + if (code == 200) { + cat("Sirius was shut down successfully\n") + self$reset_sdk_process() + return() + } + }, error = function(e) { + cat("An Exception occurred while trying to gracefully shutdown SIRIUS!\n") + cat(e$message, "\n") + }) + + if (!is.null(self$process)) { + self$process$interrupt() + Sys.sleep(3) + if (!self$process$is_alive()) { + cat("Sirius process has been terminated.\n") + self$reset_sdk_process() + return() + } + + self$process$kill() + Sys.sleep(3) + if (!self$process$is_alive()) { + cat("Sirius process has been killed.\n") + self$reset_sdk_process() + return() + } + + cat("Unable to stop Sirius! - Please manually terminate the process with PID ", self$process$get_pid(), "\n") + cat("After terminating the process, use start_sirius() to start a new instance of SIRIUS.\n") + return(FALSE) + } else if (!is.null(self$process_id)) { + system(paste("kill -SIGTERM", self$process_id)) + Sys.sleep(3) + tryCatch({ + system(paste("kill -0", self$process_id)) + }, error = function(e) { + cat("Sirius process has been terminated.\n") + self$reset_sdk_process() + return() + }) + + system(paste("kill -SIGKILL", self$process_id)) + Sys.sleep(3) + tryCatch({ + system(paste("kill -0", self$process_id)) + }, error = function(e) { + cat("Sirius process has been killed.\n") + self$reset_sdk_process() + return() + }) + + cat("Unable to stop Sirius! - Please manually terminate the process with PID ", self$process_id, "\n") + cat("After terminating the process, use start_sirius() to start a new instance of SIRIUS.\n") + return(FALSE) + } else { + cat("There does not seem to be any process or process_id to shut down...\n") + return(FALSE) + } + } + ), + + private = list( + are_all_vars_none = function() { + all_names <- ls(envir = self, all.names = TRUE) + # exclude functions + field_names <- all_names[sapply(all_names, function(name) !is.function(self[[name]]))] + # exclude ".__enclos_env__" + field_names <- field_names[-1] + all(sapply(field_names, function(name) is.null(self[[name]]))) + }, + + find_sirius_pid_and_port = function(sirius_version = NULL) { + result = private$get_sirius_pid_and_port(sirius_version) + if (is.logical(result)) { + return(FALSE) + } + pid_file = result[[1]] + port_file = result[[2]] + pid <- as.integer(readLines(pid_file, warn = FALSE)) + port <- as.integer(readLines(port_file, warn = FALSE)) + + self$process_id <- pid + self$port <- port + + message("Using port ", port, " from file ", port_file) + message("Using PID ", pid, " from file ", pid_file) + return(TRUE) + }, + + delete_sirius_pid_and_port = function(sirius_version = NULL) { + result = private$get_sirius_pid_and_port(sirius_version) + if (is.logical(result)) { + return(FALSE) + } + pid_file = result[[1]] + port_file = result[[2]] + file.remove(pid_file) + file.remove (port_file) + }, + + get_sirius_pid_and_port = function(sirius_version = NULL) { + if (Sys.info()['sysname']=="Windows") { + global_workspace <- file.path(Sys.getenv("USERPROFILE"), ".sirius") + } else { + global_workspace <- path.expand("~/.sirius") + } + + if (is.null(sirius_version) || sirius_version == "None") { + port_pattern_match <- "[0-9]*" + } else { + port_pattern_match <- sirius_version + } + + port_pattern <- file.path(global_workspace, paste0("sirius-", port_pattern_match, ".port")) + port_files <- Sys.glob(port_pattern) + + if (length(port_files) == 0) { + return(FALSE) + } + + if (length(port_files) > 1) { + message("Following sirius port files detected:") + for (f in port_files) { + message(f) + } + } + + port_file <- sort(port_files)[length(port_files)] + pid_file <- sub(".port$", ".pid", port_file) + + return(c(pid_file, port_file)) + }, + + cycle_find_sirius_pid_and_port = function() { + for (i in 1:30) { + Sys.sleep(1) + if (private$find_sirius_pid_and_port()) { + return(TRUE) + } + } + return(FALSE) + } + ) +) diff --git a/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh b/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh old mode 100644 new mode 100755 From 666ff893cbc331056fcbe7e0349f9d62f11dbfa7 Mon Sep 17 00:00:00 2001 From: Jonas Emmert <63006948+joXemMx@users.noreply.github.com> Date: Fri, 13 Feb 2026 21:48:05 +0100 Subject: [PATCH 03/14] try forcing gui api --- .github/workflows/NewUpdate.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index 00f5dc62..6a0c4354 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -54,7 +54,7 @@ jobs: echo "API Ready" - name: Run Rest Api with strings run: | - bash .updater/api/sirius/bin/sirius REST --api-mode=STABLE -p 8080 -s & + bash .updater/api/sirius/bin/sirius REST --gui --api-mode=STABLE -p 8080 -s & - name: Update api-docs-strings.json run: | while ! nc -z localhost 8080; do sleep 0.1; done @@ -64,7 +64,7 @@ jobs: run: curl -X POST http://localhost:8080/actuator/shutdown - name: Run Rest Api with enums run: | - bash .updater/api/sirius/bin/sirius REST --api-mode=STABLE --enums-as-ref -p 8080 -s & + bash .updater/api/sirius/bin/sirius REST --gui --api-mode=STABLE --enums-as-ref -p 8080 -s & - name: Update api-docs-enums.json run: | while ! nc -z localhost 8080; do sleep 0.1; done From fd8332c3943fc660f666b4f5d148787f32935eaa Mon Sep 17 00:00:00 2001 From: Jonas Emmert <63006948+joXemMx@users.noreply.github.com> Date: Wed, 18 Feb 2026 15:56:46 +0100 Subject: [PATCH 04/14] try faking graphical interface with xvfb --- .github/workflows/NewUpdate.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index 6a0c4354..0bdb6212 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -52,8 +52,13 @@ jobs: echo "Unzipping..." unzip -q sirius-*-linux-x64.zip echo "API Ready" + - name: Install Display Drivers & Libs + run: | + sudo apt-get update + sudo apt-get install -y xvfb libgtk-3-0 libx11-xcb1 libnss3 libasound2 libxss1 - name: Run Rest Api with strings run: | + xvfb-run --auto-servernum --server-args="-screen 0 1024x768x24" \ bash .updater/api/sirius/bin/sirius REST --gui --api-mode=STABLE -p 8080 -s & - name: Update api-docs-strings.json run: | @@ -64,6 +69,7 @@ jobs: run: curl -X POST http://localhost:8080/actuator/shutdown - name: Run Rest Api with enums run: | + xvfb-run --auto-servernum --server-args="-screen 0 1024x768x24" \ bash .updater/api/sirius/bin/sirius REST --gui --api-mode=STABLE --enums-as-ref -p 8080 -s & - name: Update api-docs-enums.json run: | From efbf3308968f5c6a933f5e10f7dc19a02ed98cf6 Mon Sep 17 00:00:00 2001 From: Jonas Emmert <63006948+joXemMx@users.noreply.github.com> Date: Wed, 18 Feb 2026 16:09:36 +0100 Subject: [PATCH 05/14] hopefully catch all t64 transitions here --- .github/workflows/NewUpdate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index 0bdb6212..0c80d08b 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -55,7 +55,7 @@ jobs: - name: Install Display Drivers & Libs run: | sudo apt-get update - sudo apt-get install -y xvfb libgtk-3-0 libx11-xcb1 libnss3 libasound2 libxss1 + sudo apt-get install -y xvfb libgtk-3-0t64 libasound2t64 libx11-xcb1 libnss3 libxss1 - name: Run Rest Api with strings run: | xvfb-run --auto-servernum --server-args="-screen 0 1024x768x24" \ From e559920a9ded501f38c8379200d5b44fb5a19482 Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 15:11:41 +0000 Subject: [PATCH 06/14] Auto-Updated OpenAPI Clients --- .updater/api/api-docs-enums.json | 2 +- .updater/api/api-docs-strings.json | 2 +- .../generated/.openapi-generator/FILES | 4 + .../generated/PySirius/__init__.py | 4 + .../generated/PySirius/api/__init__.py | 1 + .../generated/PySirius/api/gui_api.py | 812 ++++++++++++++++++ .../generated/PySirius/models/__init__.py | 1 + .../generated/PySirius/models/gui_info.py | 85 ++ client-api_python/generated/README.md | 4 + client-api_python/generated/docs/GuiApi.md | 210 +++++ client-api_python/generated/docs/GuiInfo.md | 29 + .../generated/.openapi-generator/FILES | 4 + client-api_r/generated/NAMESPACE | 2 + client-api_r/generated/R/gui_api.R | 396 +++++++++ client-api_r/generated/R/gui_info.R | 159 ++++ client-api_r/generated/R/rsirius_api.R | 4 + client-api_r/generated/README.md | 4 + client-api_r/generated/docs/GuiApi.md | 146 ++++ client-api_r/generated/docs/GuiInfo.md | 9 + 19 files changed, 1876 insertions(+), 2 deletions(-) create mode 100644 client-api_python/generated/PySirius/api/gui_api.py create mode 100644 client-api_python/generated/PySirius/models/gui_info.py create mode 100644 client-api_python/generated/docs/GuiApi.md create mode 100644 client-api_python/generated/docs/GuiInfo.md create mode 100644 client-api_r/generated/R/gui_api.R create mode 100644 client-api_r/generated/R/gui_info.R create mode 100644 client-api_r/generated/docs/GuiApi.md create mode 100644 client-api_r/generated/docs/GuiInfo.md diff --git a/.updater/api/api-docs-enums.json b/.updater/api/api-docs-enums.json index ab3367d5..67fd4906 100644 --- a/.updater/api/api-docs-enums.json +++ b/.updater/api/api-docs-enums.json @@ -1 +1 @@ -{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"$ref":"#/components/schemas/ProjectEventType"},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectEventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"ProjectInfoOptField":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"$ref":"#/components/schemas/ProjectType"},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"ProjectType":{"type":"string","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"ValueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"JobOptField":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"$ref":"#/components/schemas/JobEffect"}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobEffect":{"type":"string","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"$ref":"#/components/schemas/JobState"},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"JobState":{"type":"string","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"AggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"QuantMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"$ref":"#/components/schemas/SpectralMatchType"},"inchiKey":{"type":"string"},"referenceSpectrumType":{"$ref":"#/components/schemas/SpectrumType"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"$ref":"#/components/schemas/SpectrumType"}},"nullable":true},"SpectralMatchType":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"SpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"ConfidenceMode":{"type":"string","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"InstrumentProfile":{"type":"string","description":"Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.","nullable":true,"enum":["QTOF","ORBITRAP"]},"IsotopeMs2Strategy":{"type":"string","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"$ref":"#/components/schemas/InstrumentProfile"},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"$ref":"#/components/schemas/IsotopeMs2Strategy"},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType"},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"SpectralMatchingType":{"type":"string","nullable":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"$ref":"#/components/schemas/ConfidenceMode"}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"DataQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"$ref":"#/components/schemas/DataQuality"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"CompoundOptField":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"AlignedFeatureOptField":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"$ref":"#/components/schemas/DataQuality"},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/CompoundClassType"},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClassType":{"type":"string","description":"Defines compound class ontologies that are available.","nullable":true,"enum":["ClassyFire","NPC"]},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionCSI"},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionDeNovo"}},"nullable":true},"ConsensusCriterionCSI":{"type":"string","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"ConsensusCriterionDeNovo":{"type":"string","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"$ref":"#/components/schemas/ConfidenceMode"},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"$ref":"#/components/schemas/Cyp450Mode"},"p2Mode":{"$ref":"#/components/schemas/P2Mode"},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"$ref":"#/components/schemas/MetabolicTransformation"},"iterations":{"type":"integer","format":"int32"}}},"Cyp450Mode":{"type":"string","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"MetabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"P2Mode":{"type":"string","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/TraceAnnotationTypeExperimental"},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceAnnotationTypeExperimental":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantRowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"$ref":"#/components/schemas/AggregationType"},"quantification":{"$ref":"#/components/schemas/QuantMeasure"},"quantType":{"$ref":"#/components/schemas/QuantRowType"},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"$ref":"#/components/schemas/StatisticsType"},"aggregationType":{"$ref":"#/components/schemas/AggregationType"},"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"StatisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"SpectralLibraryMatchOptField":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"$ref":"#/components/schemas/DataQuality"},"weight":{"$ref":"#/components/schemas/QualityWeight"}}},"QualityWeight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]},"FormulaCandidateOptField":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"StructureCandidateOptField":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"$ref":"#/components/schemas/Solver"}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"Solver":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"$ref":"#/components/schemas/ConnectionErrorType"},"errorKlass":{"$ref":"#/components/schemas/ConnectionErrorClass"},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"ConnectionErrorClass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"ConnectionErrorType":{"type":"string","enum":["WARNING","ERROR"]},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"ApiVersion":{"type":"string","enum":["V2","V3"]},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file +{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Gui","description":"GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/gui":{"post":{"tags":["Gui"],"summary":"Open GUI instance on specified project-space and bring the GUI window to foreground.","description":"Open GUI instance on specified project-space and bring the GUI window to foreground.","operationId":"openGui","parameters":[{"name":"projectId","in":"path","description":"of project-space the GUI instance will connect to.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"}}},"delete":{"tags":["Gui"],"summary":"Close GUI instance of given project-space if available.","description":"Close GUI instance of given project-space if available.","operationId":"closeGui","parameters":[{"name":"projectId","in":"path","description":"if project-space the GUI instance is connected to.","required":true,"schema":{"type":"string"}},{"name":"closeProject","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/guis":{"get":{"tags":["Gui"],"summary":"Get list of currently running gui windows, managed by this SIRIUS instance.","description":"Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!","operationId":"getGuis","responses":{"200":{"description":"List of GUI windows that are currently managed by this SIRIUS instance.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GuiInfo"}}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"$ref":"#/components/schemas/ProjectEventType"},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectEventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"ProjectInfoOptField":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"$ref":"#/components/schemas/ProjectType"},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"ProjectType":{"type":"string","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"ValueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"JobOptField":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"$ref":"#/components/schemas/JobEffect"}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobEffect":{"type":"string","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"$ref":"#/components/schemas/JobState"},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"JobState":{"type":"string","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"AggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"QuantMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"$ref":"#/components/schemas/SpectralMatchType"},"inchiKey":{"type":"string"},"referenceSpectrumType":{"$ref":"#/components/schemas/SpectrumType"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"$ref":"#/components/schemas/SpectrumType"}},"nullable":true},"SpectralMatchType":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"SpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"ConfidenceMode":{"type":"string","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"InstrumentProfile":{"type":"string","description":"Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.","nullable":true,"enum":["QTOF","ORBITRAP"]},"IsotopeMs2Strategy":{"type":"string","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"$ref":"#/components/schemas/InstrumentProfile"},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"$ref":"#/components/schemas/IsotopeMs2Strategy"},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType"},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"SpectralMatchingType":{"type":"string","nullable":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"$ref":"#/components/schemas/ConfidenceMode"}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"DataQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"$ref":"#/components/schemas/DataQuality"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"CompoundOptField":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"AlignedFeatureOptField":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"$ref":"#/components/schemas/DataQuality"},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/CompoundClassType"},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClassType":{"type":"string","description":"Defines compound class ontologies that are available.","nullable":true,"enum":["ClassyFire","NPC"]},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionCSI"},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionDeNovo"}},"nullable":true},"ConsensusCriterionCSI":{"type":"string","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"ConsensusCriterionDeNovo":{"type":"string","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"$ref":"#/components/schemas/ConfidenceMode"},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"$ref":"#/components/schemas/Cyp450Mode"},"p2Mode":{"$ref":"#/components/schemas/P2Mode"},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"$ref":"#/components/schemas/MetabolicTransformation"},"iterations":{"type":"integer","format":"int32"}}},"Cyp450Mode":{"type":"string","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"MetabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"P2Mode":{"type":"string","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/TraceAnnotationTypeExperimental"},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceAnnotationTypeExperimental":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantRowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"$ref":"#/components/schemas/AggregationType"},"quantification":{"$ref":"#/components/schemas/QuantMeasure"},"quantType":{"$ref":"#/components/schemas/QuantRowType"},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"$ref":"#/components/schemas/StatisticsType"},"aggregationType":{"$ref":"#/components/schemas/AggregationType"},"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"StatisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"SpectralLibraryMatchOptField":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"$ref":"#/components/schemas/DataQuality"},"weight":{"$ref":"#/components/schemas/QualityWeight"}}},"QualityWeight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]},"FormulaCandidateOptField":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"StructureCandidateOptField":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"$ref":"#/components/schemas/Solver"}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"Solver":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]},"GuiInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"The project this instance is running on"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"$ref":"#/components/schemas/ConnectionErrorType"},"errorKlass":{"$ref":"#/components/schemas/ConnectionErrorClass"},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"ConnectionErrorClass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"ConnectionErrorType":{"type":"string","enum":["WARNING","ERROR"]},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"ApiVersion":{"type":"string","enum":["V2","V3"]},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file diff --git a/.updater/api/api-docs-strings.json b/.updater/api/api-docs-strings.json index aea02c51..17fe88fe 100644 --- a/.updater/api/api-docs-strings.json +++ b/.updater/api/api-docs-strings.json @@ -1 +1 @@ -{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"type":"string","description":"Type of this project.\n NULL if project type has not yet been specified by importing data.","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"type":"string","description":"Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"type":"string","description":"Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"inchiKey":{"type":"string"},"referenceSpectrumType":{"type":"string","default":"SPECTRUM","enum":["SPECTRUM","MERGED_SPECTRUM"]},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]}},"nullable":true},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"type":"string","description":"Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.","nullable":true,"enum":["QTOF","ORBITRAP"]},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"type":"string","description":"Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"type":"string","description":"NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.","nullable":true,"deprecated":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"type":"string","description":"Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"type":"string","description":"A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"type":"string","description":"Quality of this feature.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"type":"string","description":"Specifies the classification ontology the CompoundClass belongs to.","nullable":true,"enum":["ClassyFire","NPC"]},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Null if this is a custom selection","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Criterion that was used to select the consensus annotation.","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]}},"nullable":true},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"type":"string","description":"Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"type":"string","description":"Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"p2Mode":{"type":"string","description":"Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"iterations":{"type":"integer","format":"int32"}}},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"type":"string","enum":["AVG","MIN","MAX"]},"quantification":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"quantType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"aggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"type":"string","description":"Overall Quality","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"weight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]}}},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"type":"string","enum":["WARNING","ERROR"]},"errorKlass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file +{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Gui","description":"GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/gui":{"post":{"tags":["Gui"],"summary":"Open GUI instance on specified project-space and bring the GUI window to foreground.","description":"Open GUI instance on specified project-space and bring the GUI window to foreground.","operationId":"openGui","parameters":[{"name":"projectId","in":"path","description":"of project-space the GUI instance will connect to.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"}}},"delete":{"tags":["Gui"],"summary":"Close GUI instance of given project-space if available.","description":"Close GUI instance of given project-space if available.","operationId":"closeGui","parameters":[{"name":"projectId","in":"path","description":"if project-space the GUI instance is connected to.","required":true,"schema":{"type":"string"}},{"name":"closeProject","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n \n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/guis":{"get":{"tags":["Gui"],"summary":"Get list of currently running gui windows, managed by this SIRIUS instance.","description":"Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!","operationId":"getGuis","responses":{"200":{"description":"List of GUI windows that are currently managed by this SIRIUS instance.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GuiInfo"}}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"type":"string","description":"Type of this project.\n NULL if project type has not yet been specified by importing data.","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"type":"string","description":"Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"type":"string","description":"Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"inchiKey":{"type":"string"},"referenceSpectrumType":{"type":"string","default":"SPECTRUM","enum":["SPECTRUM","MERGED_SPECTRUM"]},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]}},"nullable":true},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"type":"string","description":"Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.","nullable":true,"enum":["QTOF","ORBITRAP"]},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"type":"string","description":"Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"type":"string","description":"NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.","nullable":true,"deprecated":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"type":"string","description":"Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"type":"string","description":"A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"type":"string","description":"Quality of this feature.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"type":"string","description":"Specifies the classification ontology the CompoundClass belongs to.","nullable":true,"enum":["ClassyFire","NPC"]},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Null if this is a custom selection","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Criterion that was used to select the consensus annotation.","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]}},"nullable":true},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"type":"string","description":"Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"type":"string","description":"Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"p2Mode":{"type":"string","description":"Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"iterations":{"type":"integer","format":"int32"}}},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"type":"string","enum":["AVG","MIN","MAX"]},"quantification":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"quantType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"aggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"type":"string","description":"Overall Quality","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"weight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]}}},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"GuiInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"The project this instance is running on"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"type":"string","enum":["WARNING","ERROR"]},"errorKlass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file diff --git a/client-api_python/generated/.openapi-generator/FILES b/client-api_python/generated/.openapi-generator/FILES index 2e38d3b6..bb345b9c 100644 --- a/client-api_python/generated/.openapi-generator/FILES +++ b/client-api_python/generated/.openapi-generator/FILES @@ -6,6 +6,7 @@ PySirius/api/compound_statistics_api.py PySirius/api/compounds_api.py PySirius/api/feature_statistics_api.py PySirius/api/features_api.py +PySirius/api/gui_api.py PySirius/api/info_api.py PySirius/api/jobs_api.py PySirius/api/login_and_account_api.py @@ -70,6 +71,7 @@ PySirius/models/formula_candidate.py PySirius/models/formula_candidate_opt_field.py PySirius/models/fragment_node.py PySirius/models/fragmentation_tree.py +PySirius/models/gui_info.py PySirius/models/import_result.py PySirius/models/info.py PySirius/models/instrument_profile.py @@ -217,6 +219,8 @@ docs/FormulaCandidate.md docs/FormulaCandidateOptField.md docs/FragmentNode.md docs/FragmentationTree.md +docs/GuiApi.md +docs/GuiInfo.md docs/ImportResult.md docs/Info.md docs/InfoApi.md diff --git a/client-api_python/generated/PySirius/__init__.py b/client-api_python/generated/PySirius/__init__.py index d4afb829..a4a5c768 100644 --- a/client-api_python/generated/PySirius/__init__.py +++ b/client-api_python/generated/PySirius/__init__.py @@ -21,6 +21,7 @@ "CompoundsApi", "FeatureStatisticsApi", "FeaturesApi", + "GuiApi", "InfoApi", "JobsApi", "LoginAndAccountApi", @@ -89,6 +90,7 @@ "FormulaCandidateOptField", "FragmentNode", "FragmentationTree", + "GuiInfo", "ImportResult", "Info", "InstrumentProfile", @@ -187,6 +189,7 @@ from PySirius.api.compounds_api import CompoundsApi as CompoundsApi from PySirius.api.feature_statistics_api import FeatureStatisticsApi as FeatureStatisticsApi from PySirius.api.features_api import FeaturesApi as FeaturesApi +from PySirius.api.gui_api import GuiApi as GuiApi from PySirius.api.info_api import InfoApi as InfoApi from PySirius.api.jobs_api import JobsApi as JobsApi from PySirius.api.login_and_account_api import LoginAndAccountApi as LoginAndAccountApi @@ -259,6 +262,7 @@ from PySirius.models.formula_candidate_opt_field import FormulaCandidateOptField as FormulaCandidateOptField from PySirius.models.fragment_node import FragmentNode as FragmentNode from PySirius.models.fragmentation_tree import FragmentationTree as FragmentationTree +from PySirius.models.gui_info import GuiInfo as GuiInfo from PySirius.models.import_result import ImportResult as ImportResult from PySirius.models.info import Info as Info from PySirius.models.instrument_profile import InstrumentProfile as InstrumentProfile diff --git a/client-api_python/generated/PySirius/api/__init__.py b/client-api_python/generated/PySirius/api/__init__.py index 1c12f236..06ea846e 100644 --- a/client-api_python/generated/PySirius/api/__init__.py +++ b/client-api_python/generated/PySirius/api/__init__.py @@ -6,6 +6,7 @@ from PySirius.api.compounds_api import CompoundsApi from PySirius.api.feature_statistics_api import FeatureStatisticsApi from PySirius.api.features_api import FeaturesApi +from PySirius.api.gui_api import GuiApi from PySirius.api.info_api import InfoApi from PySirius.api.jobs_api import JobsApi from PySirius.api.login_and_account_api import LoginAndAccountApi diff --git a/client-api_python/generated/PySirius/api/gui_api.py b/client-api_python/generated/PySirius/api/gui_api.py new file mode 100644 index 00000000..ac19d2d5 --- /dev/null +++ b/client-api_python/generated/PySirius/api/gui_api.py @@ -0,0 +1,812 @@ +# coding: utf-8 + +""" + SIRIUS Nightsky API + + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + +import warnings +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Any, Dict, List, Optional, Tuple, Union +from typing_extensions import Annotated + +from pydantic import Field, StrictBool, StrictStr +from typing import List, Optional +from typing_extensions import Annotated +from PySirius.models.gui_info import GuiInfo + +from PySirius.api_client import ApiClient, RequestSerialized +from PySirius.api_response import ApiResponse +from PySirius.rest import RESTResponseType + + +class GuiApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + self.api_client = api_client + + + @validate_call + def close_gui( + self, + project_id: Annotated[StrictStr, Field(description="if project-space the GUI instance is connected to.")], + close_project: Optional[StrictBool] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> bool: + """Close GUI instance of given project-space if available. + + Close GUI instance of given project-space if available. + + :param project_id: if project-space the GUI instance is connected to. (required) + :type project_id: str + :param close_project: + :type close_project: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._close_gui_serialize( + project_id=project_id, + close_project=close_project, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "bool", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def close_gui_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="if project-space the GUI instance is connected to.")], + close_project: Optional[StrictBool] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[bool]: + """Close GUI instance of given project-space if available. + + Close GUI instance of given project-space if available. + + :param project_id: if project-space the GUI instance is connected to. (required) + :type project_id: str + :param close_project: + :type close_project: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._close_gui_serialize( + project_id=project_id, + close_project=close_project, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "bool", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def close_gui_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="if project-space the GUI instance is connected to.")], + close_project: Optional[StrictBool] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Close GUI instance of given project-space if available. + + Close GUI instance of given project-space if available. + + :param project_id: if project-space the GUI instance is connected to. (required) + :type project_id: str + :param close_project: + :type close_project: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._close_gui_serialize( + project_id=project_id, + close_project=close_project, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "bool", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _close_gui_serialize( + self, + project_id, + close_project, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + # process the query parameters + if close_project is not None: + + _query_params.append(('closeProject', close_project)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='DELETE', + resource_path='/api/projects/{projectId}/gui', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def get_guis( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> List[GuiInfo]: + """Get list of currently running gui windows, managed by this SIRIUS instance. + + Get list of currently running gui windows, managed by this SIRIUS instance. Note this will not show any Clients that are connected from a separate process! + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_guis_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[GuiInfo]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def get_guis_with_http_info( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[List[GuiInfo]]: + """Get list of currently running gui windows, managed by this SIRIUS instance. + + Get list of currently running gui windows, managed by this SIRIUS instance. Note this will not show any Clients that are connected from a separate process! + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_guis_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[GuiInfo]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def get_guis_without_preload_content( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Get list of currently running gui windows, managed by this SIRIUS instance. + + Get list of currently running gui windows, managed by this SIRIUS instance. Note this will not show any Clients that are connected from a separate process! + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_guis_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "List[GuiInfo]", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_guis_serialize( + self, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/guis', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def open_gui( + self, + project_id: Annotated[StrictStr, Field(description="of project-space the GUI instance will connect to.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> None: + """Open GUI instance on specified project-space and bring the GUI window to foreground. + + Open GUI instance on specified project-space and bring the GUI window to foreground. + + :param project_id: of project-space the GUI instance will connect to. (required) + :type project_id: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._open_gui_serialize( + project_id=project_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '201': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def open_gui_with_http_info( + self, + project_id: Annotated[StrictStr, Field(description="of project-space the GUI instance will connect to.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[None]: + """Open GUI instance on specified project-space and bring the GUI window to foreground. + + Open GUI instance on specified project-space and bring the GUI window to foreground. + + :param project_id: of project-space the GUI instance will connect to. (required) + :type project_id: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._open_gui_serialize( + project_id=project_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '201': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def open_gui_without_preload_content( + self, + project_id: Annotated[StrictStr, Field(description="of project-space the GUI instance will connect to.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """Open GUI instance on specified project-space and bring the GUI window to foreground. + + Open GUI instance on specified project-space and bring the GUI window to foreground. + + :param project_id: of project-space the GUI instance will connect to. (required) + :type project_id: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._open_gui_serialize( + project_id=project_id, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '201': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _open_gui_serialize( + self, + project_id, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if project_id is not None: + _path_params['projectId'] = project_id + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='POST', + resource_path='/api/projects/{projectId}/gui', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/client-api_python/generated/PySirius/models/__init__.py b/client-api_python/generated/PySirius/models/__init__.py index 95f83ff1..b9e10406 100644 --- a/client-api_python/generated/PySirius/models/__init__.py +++ b/client-api_python/generated/PySirius/models/__init__.py @@ -63,6 +63,7 @@ from PySirius.models.formula_candidate_opt_field import FormulaCandidateOptField from PySirius.models.fragment_node import FragmentNode from PySirius.models.fragmentation_tree import FragmentationTree +from PySirius.models.gui_info import GuiInfo from PySirius.models.import_result import ImportResult from PySirius.models.info import Info from PySirius.models.instrument_profile import InstrumentProfile diff --git a/client-api_python/generated/PySirius/models/gui_info.py b/client-api_python/generated/PySirius/models/gui_info.py new file mode 100644 index 00000000..234d774a --- /dev/null +++ b/client-api_python/generated/PySirius/models/gui_info.py @@ -0,0 +1,85 @@ +# coding: utf-8 + +""" + SIRIUS Nightsky API + + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class GuiInfo(BaseModel): + """ + GuiInfo + """ # noqa: E501 + project_id: Optional[StrictStr] = Field(default=None, description="The project this instance is running on", alias="projectId") + __properties: ClassVar[List[str]] = ["projectId"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of GuiInfo from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of GuiInfo from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "projectId": obj.get("projectId") + }) + return _obj + + diff --git a/client-api_python/generated/README.md b/client-api_python/generated/README.md index 1568f057..e799e198 100644 --- a/client-api_python/generated/README.md +++ b/client-api_python/generated/README.md @@ -151,6 +151,9 @@ Class | Method | HTTP request | Description *FeaturesApi* | [**get_tags_for_aligned_features_experimental**](docs/FeaturesApi.md#get_tags_for_aligned_features_experimental) | **GET** /api/projects/{projectId}/aligned-features/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Object *FeaturesApi* | [**get_traces_experimental**](docs/FeaturesApi.md#get_traces_experimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) *FeaturesApi* | [**remove_tag_from_aligned_feature_experimental**](docs/FeaturesApi.md#remove_tag_from_aligned_feature_experimental) | **DELETE** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space +*GuiApi* | [**close_gui**](docs/GuiApi.md#close_gui) | **DELETE** /api/projects/{projectId}/gui | Close GUI instance of given project-space if available. +*GuiApi* | [**get_guis**](docs/GuiApi.md#get_guis) | **GET** /api/guis | Get list of currently running gui windows, managed by this SIRIUS instance. +*GuiApi* | [**open_gui**](docs/GuiApi.md#open_gui) | **POST** /api/projects/{projectId}/gui | Open GUI instance on specified project-space and bring the GUI window to foreground. *InfoApi* | [**get_connection_check**](docs/InfoApi.md#get_connection_check) | **GET** /api/connection-status | *InfoApi* | [**get_info**](docs/InfoApi.md#get_info) | **GET** /api/info | *JobsApi* | [**delete_job**](docs/JobsApi.md#delete_job) | **DELETE** /api/projects/{projectId}/jobs/{jobId} | Delete job. @@ -271,6 +274,7 @@ Class | Method | HTTP request | Description - [FormulaCandidateOptField](docs/FormulaCandidateOptField.md) - [FragmentNode](docs/FragmentNode.md) - [FragmentationTree](docs/FragmentationTree.md) + - [GuiInfo](docs/GuiInfo.md) - [ImportResult](docs/ImportResult.md) - [Info](docs/Info.md) - [InstrumentProfile](docs/InstrumentProfile.md) diff --git a/client-api_python/generated/docs/GuiApi.md b/client-api_python/generated/docs/GuiApi.md new file mode 100644 index 00000000..ad383d8e --- /dev/null +++ b/client-api_python/generated/docs/GuiApi.md @@ -0,0 +1,210 @@ +# PySirius.GuiApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**close_gui**](GuiApi.md#close_gui) | **DELETE** /api/projects/{projectId}/gui | Close GUI instance of given project-space if available. +[**get_guis**](GuiApi.md#get_guis) | **GET** /api/guis | Get list of currently running gui windows, managed by this SIRIUS instance. +[**open_gui**](GuiApi.md#open_gui) | **POST** /api/projects/{projectId}/gui | Open GUI instance on specified project-space and bring the GUI window to foreground. + + +# **close_gui** +> bool close_gui(project_id, close_project=close_project) + +Close GUI instance of given project-space if available. + +Close GUI instance of given project-space if available. + +### Example + + +```python +import PySirius +from PySirius.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost:8080 +# See configuration.py for a list of all supported configuration parameters. +configuration = PySirius.Configuration( + host = "http://localhost:8080" +) + + +# Enter a context with an instance of the API client +with PySirius.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = PySirius.GuiApi(api_client) + project_id = 'project_id_example' # str | if project-space the GUI instance is connected to. + close_project = True # bool | (optional) + + try: + # Close GUI instance of given project-space if available. + api_response = api_instance.close_gui(project_id, close_project=close_project) + print("The response of GuiApi->close_gui:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling GuiApi->close_gui: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| if project-space the GUI instance is connected to. | + **close_project** | **bool**| | [optional] + +### Return type + +**bool** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_guis** +> List[GuiInfo] get_guis() + +Get list of currently running gui windows, managed by this SIRIUS instance. + +Get list of currently running gui windows, managed by this SIRIUS instance. + Note this will not show any Clients that are connected from a separate process! + +### Example + + +```python +import PySirius +from PySirius.models.gui_info import GuiInfo +from PySirius.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost:8080 +# See configuration.py for a list of all supported configuration parameters. +configuration = PySirius.Configuration( + host = "http://localhost:8080" +) + + +# Enter a context with an instance of the API client +with PySirius.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = PySirius.GuiApi(api_client) + + try: + # Get list of currently running gui windows, managed by this SIRIUS instance. + api_response = api_instance.get_guis() + print("The response of GuiApi->get_guis:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling GuiApi->get_guis: %s\n" % e) +``` + + + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**List[GuiInfo]**](GuiInfo.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | List of GUI windows that are currently managed by this SIRIUS instance. | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **open_gui** +> open_gui(project_id) + +Open GUI instance on specified project-space and bring the GUI window to foreground. + +Open GUI instance on specified project-space and bring the GUI window to foreground. + +### Example + + +```python +import PySirius +from PySirius.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost:8080 +# See configuration.py for a list of all supported configuration parameters. +configuration = PySirius.Configuration( + host = "http://localhost:8080" +) + + +# Enter a context with an instance of the API client +with PySirius.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = PySirius.GuiApi(api_client) + project_id = 'project_id_example' # str | of project-space the GUI instance will connect to. + + try: + # Open GUI instance on specified project-space and bring the GUI window to foreground. + api_instance.open_gui(project_id) + except Exception as e: + print("Exception when calling GuiApi->open_gui: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **str**| of project-space the GUI instance will connect to. | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**201** | Created | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/client-api_python/generated/docs/GuiInfo.md b/client-api_python/generated/docs/GuiInfo.md new file mode 100644 index 00000000..de6176ef --- /dev/null +++ b/client-api_python/generated/docs/GuiInfo.md @@ -0,0 +1,29 @@ +# GuiInfo + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**project_id** | **str** | The project this instance is running on | [optional] + +## Example + +```python +from PySirius.models.gui_info import GuiInfo + +# TODO update the JSON string below +json = "{}" +# create an instance of GuiInfo from a JSON string +gui_info_instance = GuiInfo.from_json(json) +# print the JSON string representation of the object +print(GuiInfo.to_json()) + +# convert the object into a dict +gui_info_dict = gui_info_instance.to_dict() +# create an instance of GuiInfo from a dict +gui_info_from_dict = GuiInfo.from_dict(gui_info_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/client-api_r/generated/.openapi-generator/FILES b/client-api_r/generated/.openapi-generator/FILES index 0fe3244b..0ff976a6 100644 --- a/client-api_r/generated/.openapi-generator/FILES +++ b/client-api_r/generated/.openapi-generator/FILES @@ -49,6 +49,8 @@ R/fold_change.R R/formula_candidate.R R/fragment_node.R R/fragmentation_tree.R +R/gui_api.R +R/gui_info.R R/import_result.R R/info.R R/info_api.R @@ -167,6 +169,8 @@ docs/FoldChange.md docs/FormulaCandidate.md docs/FragmentNode.md docs/FragmentationTree.md +docs/GuiApi.md +docs/GuiInfo.md docs/ImportResult.md docs/Info.md docs/InfoApi.md diff --git a/client-api_r/generated/NAMESPACE b/client-api_r/generated/NAMESPACE index e1912854..3a146c4e 100644 --- a/client-api_r/generated/NAMESPACE +++ b/client-api_r/generated/NAMESPACE @@ -54,6 +54,7 @@ export(FoldChange) export(FormulaCandidate) export(FragmentNode) export(FragmentationTree) +export(GuiInfo) export(ImportResult) export(Info) export(IsotopePatternAnnotation) @@ -126,6 +127,7 @@ export(CompoundStatisticsApi) export(CompoundsApi) export(FeatureStatisticsApi) export(FeaturesApi) +export(GuiApi) export(InfoApi) export(JobsApi) export(LoginAndAccountApi) diff --git a/client-api_r/generated/R/gui_api.R b/client-api_r/generated/R/gui_api.R new file mode 100644 index 00000000..9726d937 --- /dev/null +++ b/client-api_r/generated/R/gui_api.R @@ -0,0 +1,396 @@ +#' SIRIUS Nightsky API +#' +#' REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6 +#' +#' The version of the OpenAPI document: 3.1 +#' Generated by: https://openapi-generator.tech +#' +#' @docType class +#' @title Gui operations +#' @description GuiApi +#' @format An \code{R6Class} generator object +#' @field api_client Handles the client-server communication. +#' +#' @examples +#' \dontrun{ +#' #################### CloseGui #################### +#' +#' library(RSirius) +#' var_project_id <- "project_id_example" # character | if project-space the GUI instance is connected to. +#' var_close_project <- "close_project_example" # character | (Optional) +#' +#' #Close GUI instance of given project-space if available. +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$CloseGui(var_project_id, close_project = var_close_projectdata_file = "result.txt") +#' result <- api_instance$gui_api$CloseGui(var_project_id, close_project = var_close_project) +#' dput(result) +#' +#' +#' #################### GetGuis #################### +#' +#' library(RSirius) +#' +#' #Get list of currently running gui windows, managed by this SIRIUS instance. +#' api_instance <- rsirius_api$new() +#' +#' # to save the result into a file, simply add the optional `data_file` parameter, e.g. +#' # result <- api_instance$GetGuis(data_file = "result.txt") +#' result <- api_instance$gui_api$GetGuis() +#' dput(result) +#' +#' +#' #################### OpenGui #################### +#' +#' library(RSirius) +#' var_project_id <- "project_id_example" # character | of project-space the GUI instance will connect to. +#' +#' #Open GUI instance on specified project-space and bring the GUI window to foreground. +#' api_instance <- rsirius_api$new() +#' +#' api_instance$gui_api$OpenGui(var_project_id) +#' +#' +#' } +#' @importFrom R6 R6Class +#' @importFrom base64enc base64encode +#' @export +GuiApi <- R6::R6Class( + "GuiApi", + public = list( + api_client = NULL, + + #' @description + #' Initialize a new GuiApi. + #' + #' @param api_client An instance of API client. + initialize = function(api_client) { + if (!missing(api_client)) { + self$api_client <- api_client + } else { + self$api_client <- ApiClient$new() + } + }, + + #' @description + #' Close GUI instance of given project-space if available. + #' + #' @param project_id if project-space the GUI instance is connected to. + #' @param close_project (optional) No description + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return character + CloseGui = function(project_id, close_project = NULL, data_file = NULL, ...) { + local_var_response <- self$CloseGuiWithHttpInfo(project_id, close_project, data_file = data_file, ...) + if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { + local_var_response$content + } else if (local_var_response$status_code >= 300 && local_var_response$status_code <= 399) { + local_var_response + } else if (local_var_response$status_code >= 400 && local_var_response$status_code <= 499) { + local_var_response + } else if (local_var_response$status_code >= 500 && local_var_response$status_code <= 599) { + local_var_response + } + }, + + #' @description + #' Close GUI instance of given project-space if available. + #' + #' @param project_id if project-space the GUI instance is connected to. + #' @param close_project (optional) No description + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (character) with additional information such as HTTP status code, headers + CloseGuiWithHttpInfo = function(project_id, close_project = NULL, data_file = NULL, ...) { + args <- list(...) + query_params <- list() + header_params <- c() + form_params <- list() + file_params <- list() + local_var_body <- NULL + oauth_scopes <- NULL + is_oauth <- FALSE + + if (missing(`project_id`)) { + stop("Missing required parameter `project_id`.") + } + + + + query_params[["closeProject"]] <- `close_project` + + local_var_url_path <- "/api/projects/{projectId}/gui" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + + # The Accept request HTTP header + local_var_accepts <- list("application/json") + + # The Content-Type representation header + local_var_content_types <- list() + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "DELETE", + query_params = query_params, + header_params = header_params, + form_params = form_params, + file_params = file_params, + accepts = local_var_accepts, + content_types = local_var_content_types, + body = local_var_body, + is_oauth = is_oauth, + oauth_scopes = oauth_scopes, + ...) + + if (local_var_resp$status_code >= 200 && local_var_resp$status_code <= 299) { + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + # Check if we are expecting a CSV response + is_csv_response <- any(grepl("csv", local_var_accepts, ignore.case = TRUE)) + + if (is_csv_response) { + # For CSV responses, parse into data.frame + csv_resp_obj <- tryCatch( + { + csv_text <- rawToChar(local_var_resp$response) + + # Detect separator by examining first line + first_line <- strsplit(csv_text, "\n")[[1]][1] + if (grepl("\t", first_line)) { + # Tab-separated (TSV) + read.csv(text = csv_text, stringsAsFactors = FALSE, sep = "\t") + } else { + # Comma-separated (CSV) + read.csv(text = csv_text, stringsAsFactors = FALSE, sep = ",") + } + }, + error = function(e) { + stop("Failed to parse CSV response") + } + ) + local_var_resp$content <- csv_resp_obj + } else { + # For JSON responses, deserialize normally + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "character", loadNamespace("RSirius")), + error = function(e) { + stop("Failed to deserialize response") + } + ) + local_var_resp$content <- deserialized_resp_obj + } + local_var_resp + } else if (local_var_resp$status_code >= 300 && local_var_resp$status_code <= 399) { + ApiResponse$new(paste("Server returned ", local_var_resp$status_code, " response status code."), local_var_resp) + } else if (local_var_resp$status_code >= 400 && local_var_resp$status_code <= 499) { + ApiResponse$new("API client error", local_var_resp) + } else if (local_var_resp$status_code >= 500 && local_var_resp$status_code <= 599) { + if (is.null(local_var_resp$response) || local_var_resp$response == "") { + local_var_resp$response <- "API server error" + } + local_var_resp + } + }, + + #' @description + #' Get list of currently running gui windows, managed by this SIRIUS instance. + #' + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return array[GuiInfo] + GetGuis = function(data_file = NULL, ...) { + local_var_response <- self$GetGuisWithHttpInfo(data_file = data_file, ...) + if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { + local_var_response$content + } else if (local_var_response$status_code >= 300 && local_var_response$status_code <= 399) { + local_var_response + } else if (local_var_response$status_code >= 400 && local_var_response$status_code <= 499) { + local_var_response + } else if (local_var_response$status_code >= 500 && local_var_response$status_code <= 599) { + local_var_response + } + }, + + #' @description + #' Get list of currently running gui windows, managed by this SIRIUS instance. + #' + #' @param data_file (optional) name of the data file to save the result + #' @param ... Other optional arguments + #' + #' @return API response (array[GuiInfo]) with additional information such as HTTP status code, headers + GetGuisWithHttpInfo = function(data_file = NULL, ...) { + args <- list(...) + query_params <- list() + header_params <- c() + form_params <- list() + file_params <- list() + local_var_body <- NULL + oauth_scopes <- NULL + is_oauth <- FALSE + + local_var_url_path <- "/api/guis" + + # The Accept request HTTP header + local_var_accepts <- list("application/json") + + # The Content-Type representation header + local_var_content_types <- list() + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "GET", + query_params = query_params, + header_params = header_params, + form_params = form_params, + file_params = file_params, + accepts = local_var_accepts, + content_types = local_var_content_types, + body = local_var_body, + is_oauth = is_oauth, + oauth_scopes = oauth_scopes, + ...) + + if (local_var_resp$status_code >= 200 && local_var_resp$status_code <= 299) { + # save response in a file + if (!is.null(data_file)) { + write(local_var_resp$response, data_file) + } + + # Check if we are expecting a CSV response + is_csv_response <- any(grepl("csv", local_var_accepts, ignore.case = TRUE)) + + if (is_csv_response) { + # For CSV responses, parse into data.frame + csv_resp_obj <- tryCatch( + { + csv_text <- rawToChar(local_var_resp$response) + + # Detect separator by examining first line + first_line <- strsplit(csv_text, "\n")[[1]][1] + if (grepl("\t", first_line)) { + # Tab-separated (TSV) + read.csv(text = csv_text, stringsAsFactors = FALSE, sep = "\t") + } else { + # Comma-separated (CSV) + read.csv(text = csv_text, stringsAsFactors = FALSE, sep = ",") + } + }, + error = function(e) { + stop("Failed to parse CSV response") + } + ) + local_var_resp$content <- csv_resp_obj + } else { + # For JSON responses, deserialize normally + deserialized_resp_obj <- tryCatch( + self$api_client$deserialize(local_var_resp$response_as_text(), "array[GuiInfo]", loadNamespace("RSirius")), + error = function(e) { + stop("Failed to deserialize response") + } + ) + local_var_resp$content <- deserialized_resp_obj + } + local_var_resp + } else if (local_var_resp$status_code >= 300 && local_var_resp$status_code <= 399) { + ApiResponse$new(paste("Server returned ", local_var_resp$status_code, " response status code."), local_var_resp) + } else if (local_var_resp$status_code >= 400 && local_var_resp$status_code <= 499) { + ApiResponse$new("API client error", local_var_resp) + } else if (local_var_resp$status_code >= 500 && local_var_resp$status_code <= 599) { + if (is.null(local_var_resp$response) || local_var_resp$response == "") { + local_var_resp$response <- "API server error" + } + local_var_resp + } + }, + + #' @description + #' Open GUI instance on specified project-space and bring the GUI window to foreground. + #' + #' @param project_id of project-space the GUI instance will connect to. + #' @param ... Other optional arguments + #' + #' @return void + OpenGui = function(project_id, ...) { + local_var_response <- self$OpenGuiWithHttpInfo(project_id, ...) + if (local_var_response$status_code >= 200 && local_var_response$status_code <= 299) { + local_var_response$content + } else if (local_var_response$status_code >= 300 && local_var_response$status_code <= 399) { + local_var_response + } else if (local_var_response$status_code >= 400 && local_var_response$status_code <= 499) { + local_var_response + } else if (local_var_response$status_code >= 500 && local_var_response$status_code <= 599) { + local_var_response + } + }, + + #' @description + #' Open GUI instance on specified project-space and bring the GUI window to foreground. + #' + #' @param project_id of project-space the GUI instance will connect to. + #' @param ... Other optional arguments + #' + #' @return API response (void) with additional information such as HTTP status code, headers + OpenGuiWithHttpInfo = function(project_id, ...) { + args <- list(...) + query_params <- list() + header_params <- c() + form_params <- list() + file_params <- list() + local_var_body <- NULL + oauth_scopes <- NULL + is_oauth <- FALSE + + if (missing(`project_id`)) { + stop("Missing required parameter `project_id`.") + } + + + local_var_url_path <- "/api/projects/{projectId}/gui" + if (!missing(`project_id`)) { + local_var_url_path <- gsub("\\{projectId\\}", URLencode(as.character(`project_id`), reserved = TRUE), local_var_url_path) + } + + + # The Accept request HTTP header + local_var_accepts <- list() + + # The Content-Type representation header + local_var_content_types <- list() + + local_var_resp <- self$api_client$CallApi(url = paste0(self$api_client$base_path, local_var_url_path), + method = "POST", + query_params = query_params, + header_params = header_params, + form_params = form_params, + file_params = file_params, + accepts = local_var_accepts, + content_types = local_var_content_types, + body = local_var_body, + is_oauth = is_oauth, + oauth_scopes = oauth_scopes, + ...) + + if (local_var_resp$status_code >= 200 && local_var_resp$status_code <= 299) { + local_var_resp$content <- NULL + local_var_resp + } else if (local_var_resp$status_code >= 300 && local_var_resp$status_code <= 399) { + ApiResponse$new(paste("Server returned ", local_var_resp$status_code, " response status code."), local_var_resp) + } else if (local_var_resp$status_code >= 400 && local_var_resp$status_code <= 499) { + ApiResponse$new("API client error", local_var_resp) + } else if (local_var_resp$status_code >= 500 && local_var_resp$status_code <= 599) { + if (is.null(local_var_resp$response) || local_var_resp$response == "") { + local_var_resp$response <- "API server error" + } + local_var_resp + } + } + ) +) diff --git a/client-api_r/generated/R/gui_info.R b/client-api_r/generated/R/gui_info.R new file mode 100644 index 00000000..1b4259fe --- /dev/null +++ b/client-api_r/generated/R/gui_info.R @@ -0,0 +1,159 @@ +#' Create a new GuiInfo +#' +#' @description +#' GuiInfo Class +#' +#' @docType class +#' @title GuiInfo +#' @description GuiInfo Class +#' @format An \code{R6Class} generator object +#' @field projectId The project this instance is running on character [optional] +#' @importFrom R6 R6Class +#' @importFrom jsonlite fromJSON toJSON +#' @export +GuiInfo <- R6::R6Class( + "GuiInfo", + public = list( + `projectId` = NULL, + + #' @description + #' Initialize a new GuiInfo class. + #' + #' @param projectId The project this instance is running on + #' @param ... Other optional arguments. + initialize = function(`projectId` = NULL, ...) { + if (!is.null(`projectId`)) { + if (!(is.character(`projectId`) && length(`projectId`) == 1)) { + stop(paste("Error! Invalid data for `projectId`. Must be a string:", `projectId`)) + } + self$`projectId` <- `projectId` + } + }, + + #' @description + #' Convert to an R object. This method is deprecated. Use `toSimpleType()` instead. + toJSON = function() { + .Deprecated(new = "toSimpleType", msg = "Use the '$toSimpleType()' method instead since that is more clearly named. Use '$toJSONString()' to get a JSON string") + return(self$toSimpleType()) + }, + + #' @description + #' Convert to a List + #' + #' Convert the R6 object to a list to work more easily with other tooling. + #' + #' @return GuiInfo as a base R list. + #' @examples + #' # convert array of GuiInfo (x) to a data frame + #' \dontrun{ + #' library(purrr) + #' library(tibble) + #' df <- x |> map(\(y)y$toList()) |> map(as_tibble) |> list_rbind() + #' df + #' } + toList = function() { + return(self$toSimpleType()) + }, + + #' @description + #' Convert GuiInfo to a base R type + #' + #' @return A base R type, e.g. a list or numeric/character array. + toSimpleType = function() { + GuiInfoObject <- list() + if (!is.null(self$`projectId`)) { + GuiInfoObject[["projectId"]] <- + self$`projectId` + } + return(GuiInfoObject) + }, + + #' @description + #' Deserialize JSON string into an instance of GuiInfo + #' + #' @param input_json the JSON input + #' @return the instance of GuiInfo + fromJSON = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + if (!is.null(this_object$`projectId`)) { + self$`projectId` <- this_object$`projectId` + } + self + }, + + #' @description + #' To JSON String + #' + #' @param ... Parameters passed to `jsonlite::toJSON` + #' @return GuiInfo in JSON format + toJSONString = function(...) { + simple <- self$toSimpleType() + json <- jsonlite::toJSON(simple, auto_unbox = TRUE, digits = NA, null = 'null', ...) + return(as.character(jsonlite::minify(json))) + }, + + #' @description + #' Deserialize JSON string into an instance of GuiInfo + #' + #' @param input_json the JSON input + #' @return the instance of GuiInfo + fromJSONString = function(input_json) { + this_object <- jsonlite::fromJSON(input_json) + self$`projectId` <- this_object$`projectId` + self + }, + + #' @description + #' Validate JSON input with respect to GuiInfo and throw an exception if invalid + #' + #' @param input the JSON input + validateJSON = function(input) { + input_json <- jsonlite::fromJSON(input) + }, + + #' @description + #' To string (JSON format) + #' + #' @return String representation of GuiInfo + toString = function() { + self$toJSONString() + }, + + #' @description + #' Return true if the values in all fields are valid. + #' + #' @return true if the values in all fields are valid. + isValid = function() { + TRUE + }, + + #' @description + #' Return a list of invalid fields (if any). + #' + #' @return A list of invalid fields (if any). + getInvalidFields = function() { + invalid_fields <- list() + invalid_fields + }, + + #' @description + #' Print the object + print = function() { + print(jsonlite::prettify(self$toJSONString())) + invisible(self) + } + ), + # Lock the class to prevent modifications to the method or field + lock_class = TRUE +) +## Uncomment below to unlock the class to allow modifications of the method or field +# GuiInfo$unlock() +# +## Below is an example to define the print function +# GuiInfo$set("public", "print", function(...) { +# print(jsonlite::prettify(self$toJSONString())) +# invisible(self) +# }) +## Uncomment below to lock the class to prevent modifications to the method or field +# GuiInfo$lock() + diff --git a/client-api_r/generated/R/rsirius_api.R b/client-api_r/generated/R/rsirius_api.R index 4816da6a..c44f36ac 100644 --- a/client-api_r/generated/R/rsirius_api.R +++ b/client-api_r/generated/R/rsirius_api.R @@ -23,6 +23,7 @@ #' @field compounds_api an instance of CompoundsApi #' @field feature_statistics_api an instance of FeatureStatisticsApi #' @field features_api an instance of FeaturesApi +#' @field gui_api an instance of GuiApi #' @field info_api an instance of InfoApi #' @field jobs_api an instance of JobsApi #' @field login_and_account_api an instance of LoginAndAccountApi @@ -40,6 +41,7 @@ rsirius_api <- R6::R6Class( compounds_api = NULL, feature_statistics_api = NULL, features_api = NULL, + gui_api = NULL, info_api = NULL, jobs_api = NULL, login_and_account_api = NULL, @@ -71,6 +73,8 @@ rsirius_api <- R6::R6Class( self$features_api <- FeaturesApi$new(self$api_client) + self$gui_api <- GuiApi$new(self$api_client) + self$info_api <- InfoApi$new(self$api_client) self$jobs_api <- JobsApi$new(self$api_client) diff --git a/client-api_r/generated/README.md b/client-api_r/generated/README.md index 58b34edb..c6ebce18 100644 --- a/client-api_r/generated/README.md +++ b/client-api_r/generated/README.md @@ -140,6 +140,9 @@ Class | Method | HTTP request | Description *FeaturesApi* | [**GetTagsForAlignedFeaturesExperimental**](docs/FeaturesApi.md#GetTagsForAlignedFeaturesExperimental) | **GET** /api/projects/{projectId}/aligned-features/tags/{objectId} | [EXPERIMENTAL] Get all tags associated with this Object *FeaturesApi* | [**GetTracesExperimental**](docs/FeaturesApi.md#GetTracesExperimental) | **GET** /api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces | [EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId) *FeaturesApi* | [**RemoveTagFromAlignedFeatureExperimental**](docs/FeaturesApi.md#RemoveTagFromAlignedFeatureExperimental) | **DELETE** /api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName} | [EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space +*GuiApi* | [**CloseGui**](docs/GuiApi.md#CloseGui) | **DELETE** /api/projects/{projectId}/gui | Close GUI instance of given project-space if available. +*GuiApi* | [**GetGuis**](docs/GuiApi.md#GetGuis) | **GET** /api/guis | Get list of currently running gui windows, managed by this SIRIUS instance. +*GuiApi* | [**OpenGui**](docs/GuiApi.md#OpenGui) | **POST** /api/projects/{projectId}/gui | Open GUI instance on specified project-space and bring the GUI window to foreground. *InfoApi* | [**GetConnectionCheck**](docs/InfoApi.md#GetConnectionCheck) | **GET** /api/connection-status | *InfoApi* | [**GetInfo**](docs/InfoApi.md#GetInfo) | **GET** /api/info | *JobsApi* | [**DeleteJob**](docs/JobsApi.md#DeleteJob) | **DELETE** /api/projects/{projectId}/jobs/{jobId} | Delete job. @@ -247,6 +250,7 @@ Class | Method | HTTP request | Description - [FormulaCandidate](docs/FormulaCandidate.md) - [FragmentNode](docs/FragmentNode.md) - [FragmentationTree](docs/FragmentationTree.md) + - [GuiInfo](docs/GuiInfo.md) - [ImportResult](docs/ImportResult.md) - [Info](docs/Info.md) - [IsotopePatternAnnotation](docs/IsotopePatternAnnotation.md) diff --git a/client-api_r/generated/docs/GuiApi.md b/client-api_r/generated/docs/GuiApi.md new file mode 100644 index 00000000..675fd395 --- /dev/null +++ b/client-api_r/generated/docs/GuiApi.md @@ -0,0 +1,146 @@ +# GuiApi + +All URIs are relative to *http://localhost:8080* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**CloseGui**](GuiApi.md#CloseGui) | **DELETE** /api/projects/{projectId}/gui | Close GUI instance of given project-space if available. +[**GetGuis**](GuiApi.md#GetGuis) | **GET** /api/guis | Get list of currently running gui windows, managed by this SIRIUS instance. +[**OpenGui**](GuiApi.md#OpenGui) | **POST** /api/projects/{projectId}/gui | Open GUI instance on specified project-space and bring the GUI window to foreground. + + +# **CloseGui** +> character CloseGui(project_id, close_project = var.close_project) + +Close GUI instance of given project-space if available. + +Close GUI instance of given project-space if available. + +### Example +```R +library(RSirius) + +# Close GUI instance of given project-space if available. +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | if project-space the GUI instance is connected to. +var_close_project <- "close_project_example" # character | (Optional) + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$CloseGui(var_project_id, close_project = var_close_projectdata_file = "result.txt") +result <- api_instance$gui_api$CloseGui(var_project_id, close_project = var_close_project) +dput(result) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| if project-space the GUI instance is connected to. | + **close_project** | **character**| | [optional] + +### Return type + +**character** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | OK | - | + +# **GetGuis** +> array[GuiInfo] GetGuis() + +Get list of currently running gui windows, managed by this SIRIUS instance. + +Get list of currently running gui windows, managed by this SIRIUS instance. Note this will not show any Clients that are connected from a separate process! + +### Example +```R +library(RSirius) + +# Get list of currently running gui windows, managed by this SIRIUS instance. +# + +api_instance <- rsirius_api$new() +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetGuis(data_file = "result.txt") +result <- api_instance$gui_api$GetGuis() +dput(result) +``` + +### Parameters +This endpoint does not need any parameter. + +### Return type + +[**array[GuiInfo]**](GuiInfo.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | List of GUI windows that are currently managed by this SIRIUS instance. | - | + +# **OpenGui** +> OpenGui(project_id) + +Open GUI instance on specified project-space and bring the GUI window to foreground. + +Open GUI instance on specified project-space and bring the GUI window to foreground. + +### Example +```R +library(RSirius) + +# Open GUI instance on specified project-space and bring the GUI window to foreground. +# +# prepare function argument(s) +var_project_id <- "project_id_example" # character | of project-space the GUI instance will connect to. + +api_instance <- rsirius_api$new() +api_instance$gui_api$OpenGui(var_project_id) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **project_id** | **character**| of project-space the GUI instance will connect to. | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **201** | Created | - | + diff --git a/client-api_r/generated/docs/GuiInfo.md b/client-api_r/generated/docs/GuiInfo.md new file mode 100644 index 00000000..b1671dd8 --- /dev/null +++ b/client-api_r/generated/docs/GuiInfo.md @@ -0,0 +1,9 @@ +# RSirius::GuiInfo + + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**projectId** | **character** | The project this instance is running on | [optional] + + From 7e1e89d882ac99276a2a329be1d087ef90f8bf93 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 18 Feb 2026 15:17:17 +0000 Subject: [PATCH 07/14] Auto-Generated RSirius Manual --- client-api_r/generated/man/GuiApi.Rd | 263 +++++++++++++++++++++ client-api_r/generated/man/GuiInfo.Rd | 271 ++++++++++++++++++++++ client-api_r/generated/man/rsirius_api.Rd | 2 + 3 files changed, 536 insertions(+) create mode 100644 client-api_r/generated/man/GuiApi.Rd create mode 100644 client-api_r/generated/man/GuiInfo.Rd diff --git a/client-api_r/generated/man/GuiApi.Rd b/client-api_r/generated/man/GuiApi.Rd new file mode 100644 index 00000000..1fd26ebc --- /dev/null +++ b/client-api_r/generated/man/GuiApi.Rd @@ -0,0 +1,263 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/gui_api.R +\docType{class} +\name{GuiApi} +\alias{GuiApi} +\title{Gui operations} +\format{ +An \code{R6Class} generator object +} +\description{ +GuiApi +} +\details{ +SIRIUS Nightsky API + +REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6 + +The version of the OpenAPI document: 3.1 +Generated by: https://openapi-generator.tech +} +\examples{ +\dontrun{ +#################### CloseGui #################### + +library(RSirius) +var_project_id <- "project_id_example" # character | if project-space the GUI instance is connected to. +var_close_project <- "close_project_example" # character | (Optional) + +#Close GUI instance of given project-space if available. +api_instance <- rsirius_api$new() + +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$CloseGui(var_project_id, close_project = var_close_projectdata_file = "result.txt") +result <- api_instance$gui_api$CloseGui(var_project_id, close_project = var_close_project) +dput(result) + + +#################### GetGuis #################### + +library(RSirius) + +#Get list of currently running gui windows, managed by this SIRIUS instance. +api_instance <- rsirius_api$new() + +# to save the result into a file, simply add the optional `data_file` parameter, e.g. +# result <- api_instance$GetGuis(data_file = "result.txt") +result <- api_instance$gui_api$GetGuis() +dput(result) + + +#################### OpenGui #################### + +library(RSirius) +var_project_id <- "project_id_example" # character | of project-space the GUI instance will connect to. + +#Open GUI instance on specified project-space and bring the GUI window to foreground. +api_instance <- rsirius_api$new() + +api_instance$gui_api$OpenGui(var_project_id) + + +} +} +\section{Public fields}{ +\if{html}{\out{

}} +\describe{ +\item{\code{api_client}}{Handles the client-server communication.} +} +\if{html}{\out{
}} +} +\section{Methods}{ +\subsection{Public methods}{ +\itemize{ +\item \href{#method-GuiApi-new}{\code{GuiApi$new()}} +\item \href{#method-GuiApi-CloseGui}{\code{GuiApi$CloseGui()}} +\item \href{#method-GuiApi-CloseGuiWithHttpInfo}{\code{GuiApi$CloseGuiWithHttpInfo()}} +\item \href{#method-GuiApi-GetGuis}{\code{GuiApi$GetGuis()}} +\item \href{#method-GuiApi-GetGuisWithHttpInfo}{\code{GuiApi$GetGuisWithHttpInfo()}} +\item \href{#method-GuiApi-OpenGui}{\code{GuiApi$OpenGui()}} +\item \href{#method-GuiApi-OpenGuiWithHttpInfo}{\code{GuiApi$OpenGuiWithHttpInfo()}} +\item \href{#method-GuiApi-clone}{\code{GuiApi$clone()}} +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-new}{}}} +\subsection{Method \code{new()}}{ +Initialize a new GuiApi. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$new(api_client)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{api_client}}{An instance of API client.} +} +\if{html}{\out{
}} +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-CloseGui}{}}} +\subsection{Method \code{CloseGui()}}{ +Close GUI instance of given project-space if available. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$CloseGui(project_id, close_project = NULL, data_file = NULL, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{project_id}}{if project-space the GUI instance is connected to.} + +\item{\code{close_project}}{(optional) No description} + +\item{\code{data_file}}{(optional) name of the data file to save the result} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +character +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-CloseGuiWithHttpInfo}{}}} +\subsection{Method \code{CloseGuiWithHttpInfo()}}{ +Close GUI instance of given project-space if available. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$CloseGuiWithHttpInfo( + project_id, + close_project = NULL, + data_file = NULL, + ... +)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{project_id}}{if project-space the GUI instance is connected to.} + +\item{\code{close_project}}{(optional) No description} + +\item{\code{data_file}}{(optional) name of the data file to save the result} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +API response (character) with additional information such as HTTP status code, headers +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-GetGuis}{}}} +\subsection{Method \code{GetGuis()}}{ +Get list of currently running gui windows, managed by this SIRIUS instance. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$GetGuis(data_file = NULL, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{data_file}}{(optional) name of the data file to save the result} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +array[GuiInfo] +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-GetGuisWithHttpInfo}{}}} +\subsection{Method \code{GetGuisWithHttpInfo()}}{ +Get list of currently running gui windows, managed by this SIRIUS instance. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$GetGuisWithHttpInfo(data_file = NULL, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{data_file}}{(optional) name of the data file to save the result} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +API response (array[GuiInfo]) with additional information such as HTTP status code, headers +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-OpenGui}{}}} +\subsection{Method \code{OpenGui()}}{ +Open GUI instance on specified project-space and bring the GUI window to foreground. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$OpenGui(project_id, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{project_id}}{of project-space the GUI instance will connect to.} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +void +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-OpenGuiWithHttpInfo}{}}} +\subsection{Method \code{OpenGuiWithHttpInfo()}}{ +Open GUI instance on specified project-space and bring the GUI window to foreground. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$OpenGuiWithHttpInfo(project_id, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{project_id}}{of project-space the GUI instance will connect to.} + +\item{\code{...}}{Other optional arguments} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +API response (void) with additional information such as HTTP status code, headers +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiApi-clone}{}}} +\subsection{Method \code{clone()}}{ +The objects of this class are cloneable with this method. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiApi$clone(deep = FALSE)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{deep}}{Whether to make a deep clone.} +} +\if{html}{\out{
}} +} +} +} diff --git a/client-api_r/generated/man/GuiInfo.Rd b/client-api_r/generated/man/GuiInfo.Rd new file mode 100644 index 00000000..ee3bc532 --- /dev/null +++ b/client-api_r/generated/man/GuiInfo.Rd @@ -0,0 +1,271 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/gui_info.R +\docType{class} +\name{GuiInfo} +\alias{GuiInfo} +\title{GuiInfo} +\format{ +An \code{R6Class} generator object +} +\description{ +GuiInfo Class + +GuiInfo Class +} +\details{ +Create a new GuiInfo +} +\examples{ + +## ------------------------------------------------ +## Method `GuiInfo$toList` +## ------------------------------------------------ + +# convert array of GuiInfo (x) to a data frame +\dontrun{ +library(purrr) +library(tibble) +df <- x |> map(\(y)y$toList()) |> map(as_tibble) |> list_rbind() +df +} +} +\section{Public fields}{ +\if{html}{\out{
}} +\describe{ +\item{\code{projectId}}{The project this instance is running on character [optional]} +} +\if{html}{\out{
}} +} +\section{Methods}{ +\subsection{Public methods}{ +\itemize{ +\item \href{#method-GuiInfo-new}{\code{GuiInfo$new()}} +\item \href{#method-GuiInfo-toJSON}{\code{GuiInfo$toJSON()}} +\item \href{#method-GuiInfo-toList}{\code{GuiInfo$toList()}} +\item \href{#method-GuiInfo-toSimpleType}{\code{GuiInfo$toSimpleType()}} +\item \href{#method-GuiInfo-fromJSON}{\code{GuiInfo$fromJSON()}} +\item \href{#method-GuiInfo-toJSONString}{\code{GuiInfo$toJSONString()}} +\item \href{#method-GuiInfo-fromJSONString}{\code{GuiInfo$fromJSONString()}} +\item \href{#method-GuiInfo-validateJSON}{\code{GuiInfo$validateJSON()}} +\item \href{#method-GuiInfo-toString}{\code{GuiInfo$toString()}} +\item \href{#method-GuiInfo-isValid}{\code{GuiInfo$isValid()}} +\item \href{#method-GuiInfo-getInvalidFields}{\code{GuiInfo$getInvalidFields()}} +\item \href{#method-GuiInfo-print}{\code{GuiInfo$print()}} +\item \href{#method-GuiInfo-clone}{\code{GuiInfo$clone()}} +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-new}{}}} +\subsection{Method \code{new()}}{ +Initialize a new GuiInfo class. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$new(projectId = NULL, ...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{projectId}}{The project this instance is running on} + +\item{\code{...}}{Other optional arguments.} +} +\if{html}{\out{
}} +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-toJSON}{}}} +\subsection{Method \code{toJSON()}}{ +Convert to an R object. This method is deprecated. Use `toSimpleType()` instead. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$toJSON()}\if{html}{\out{
}} +} + +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-toList}{}}} +\subsection{Method \code{toList()}}{ +Convert to a List + +Convert the R6 object to a list to work more easily with other tooling. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$toList()}\if{html}{\out{
}} +} + +\subsection{Returns}{ +GuiInfo as a base R list. +} +\subsection{Examples}{ +\if{html}{\out{
}} +\preformatted{# convert array of GuiInfo (x) to a data frame +\dontrun{ +library(purrr) +library(tibble) +df <- x |> map(\(y)y$toList()) |> map(as_tibble) |> list_rbind() +df +} +} +\if{html}{\out{
}} + +} + +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-toSimpleType}{}}} +\subsection{Method \code{toSimpleType()}}{ +Convert GuiInfo to a base R type +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$toSimpleType()}\if{html}{\out{
}} +} + +\subsection{Returns}{ +A base R type, e.g. a list or numeric/character array. +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-fromJSON}{}}} +\subsection{Method \code{fromJSON()}}{ +Deserialize JSON string into an instance of GuiInfo +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$fromJSON(input_json)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{input_json}}{the JSON input} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +the instance of GuiInfo +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-toJSONString}{}}} +\subsection{Method \code{toJSONString()}}{ +To JSON String +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$toJSONString(...)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{...}}{Parameters passed to `jsonlite::toJSON`} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +GuiInfo in JSON format +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-fromJSONString}{}}} +\subsection{Method \code{fromJSONString()}}{ +Deserialize JSON string into an instance of GuiInfo +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$fromJSONString(input_json)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{input_json}}{the JSON input} +} +\if{html}{\out{
}} +} +\subsection{Returns}{ +the instance of GuiInfo +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-validateJSON}{}}} +\subsection{Method \code{validateJSON()}}{ +Validate JSON input with respect to GuiInfo and throw an exception if invalid +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$validateJSON(input)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{input}}{the JSON input} +} +\if{html}{\out{
}} +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-toString}{}}} +\subsection{Method \code{toString()}}{ +To string (JSON format) +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$toString()}\if{html}{\out{
}} +} + +\subsection{Returns}{ +String representation of GuiInfo +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-isValid}{}}} +\subsection{Method \code{isValid()}}{ +Return true if the values in all fields are valid. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$isValid()}\if{html}{\out{
}} +} + +\subsection{Returns}{ +true if the values in all fields are valid. +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-getInvalidFields}{}}} +\subsection{Method \code{getInvalidFields()}}{ +Return a list of invalid fields (if any). +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$getInvalidFields()}\if{html}{\out{
}} +} + +\subsection{Returns}{ +A list of invalid fields (if any). +} +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-print}{}}} +\subsection{Method \code{print()}}{ +Print the object +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$print()}\if{html}{\out{
}} +} + +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-GuiInfo-clone}{}}} +\subsection{Method \code{clone()}}{ +The objects of this class are cloneable with this method. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{GuiInfo$clone(deep = FALSE)}\if{html}{\out{
}} +} + +\subsection{Arguments}{ +\if{html}{\out{
}} +\describe{ +\item{\code{deep}}{Whether to make a deep clone.} +} +\if{html}{\out{
}} +} +} +} diff --git a/client-api_r/generated/man/rsirius_api.Rd b/client-api_r/generated/man/rsirius_api.Rd index 99b01b6c..2dcf9571 100644 --- a/client-api_r/generated/man/rsirius_api.Rd +++ b/client-api_r/generated/man/rsirius_api.Rd @@ -41,6 +41,8 @@ Do not edit the class manually. \item{\code{features_api}}{an instance of FeaturesApi} +\item{\code{gui_api}}{an instance of GuiApi} + \item{\code{info_api}}{an instance of InfoApi} \item{\code{jobs_api}}{an instance of JobsApi} From 01ed8a19349318a8de774ff552c41aeaec4d4b0a Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 18:09:22 +0100 Subject: [PATCH 08/14] automated formatting of the JSON API docs --- .github/workflows/NewUpdate.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index 0c80d08b..0b7a8389 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -78,6 +78,11 @@ jobs: wget -nv http://localhost:8080/v3/api-docs -O api-docs-enums.json - name: Shutdown SIRIUS run: curl -X POST http://localhost:8080/actuator/shutdown + - name: Format JSON files + run: | + sudo apt-get install -y moreutils + jq . api-docs-strings.json | sponge api-docs-strings.json + jq . api-docs-enums.json | sponge api-docs-enums.json - name: Update Clients run: | # load package version from file From da83fe0a3ab2554c99093530388ea5cffaed86f8 Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 17:11:51 +0000 Subject: [PATCH 09/14] Auto-Updated OpenAPI Clients --- api-docs-enums.json | 0 api-docs-strings.json | 0 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 api-docs-enums.json create mode 100644 api-docs-strings.json diff --git a/api-docs-enums.json b/api-docs-enums.json new file mode 100644 index 00000000..e69de29b diff --git a/api-docs-strings.json b/api-docs-strings.json new file mode 100644 index 00000000..e69de29b From d2635ed1d06ffb46fe319c4537b613e48eb881d0 Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 18:18:05 +0100 Subject: [PATCH 10/14] hopefully bugfix incorrect RManualGeneration fail --- .github/workflows/NewUpdate.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index 0b7a8389..ffdbbed9 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -150,8 +150,7 @@ jobs: echo "dispatched workflow" echo "sleeping for 30s to make sure it started" sleep 30 - list=$(gh run list --workflow RManualGeneration --branch ${GITHUB_REF##*/}) - id=$(echo $list | grep -oP 'in_progress RManualGeneration RManualGeneration [^ ]* workflow_dispatch \K\d+') + id=$(gh run list --workflow RManualGeneration.yml --branch ${GITHUB_REF##*/} --json databaseId,status --jq '.[] | select(.status=="in_progress") | .databaseId') echo "run ID of RManualGeneration is: $id" gh run watch $id --exit-status --interval 3 echo "generation done!" From af0a70556d482ed12dc59e072da1b8d244e2b5de Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 18:24:45 +0100 Subject: [PATCH 11/14] fix formatting not finding JSON files, homogenize usage of working-directory --- .github/workflows/NewUpdate.yml | 39 ++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/.github/workflows/NewUpdate.yml b/.github/workflows/NewUpdate.yml index ffdbbed9..2e9d4fd9 100644 --- a/.github/workflows/NewUpdate.yml +++ b/.github/workflows/NewUpdate.yml @@ -63,8 +63,8 @@ jobs: - name: Update api-docs-strings.json run: | while ! nc -z localhost 8080; do sleep 0.1; done - cd .updater/api wget -nv http://localhost:8080/v3/api-docs -O api-docs-strings.json + working-directory: .updater/api - name: Shutdown SIRIUS run: curl -X POST http://localhost:8080/actuator/shutdown - name: Run Rest Api with enums @@ -74,8 +74,8 @@ jobs: - name: Update api-docs-enums.json run: | while ! nc -z localhost 8080; do sleep 0.1; done - cd .updater/api wget -nv http://localhost:8080/v3/api-docs -O api-docs-enums.json + working-directory: .updater/api - name: Shutdown SIRIUS run: curl -X POST http://localhost:8080/actuator/shutdown - name: Format JSON files @@ -83,6 +83,7 @@ jobs: sudo apt-get install -y moreutils jq . api-docs-strings.json | sponge api-docs-strings.json jq . api-docs-enums.json | sponge api-docs-enums.json + working-directory: .updater/api - name: Update Clients run: | # load package version from file @@ -109,32 +110,34 @@ jobs: echo "generating Finished!" - name: Format Python Package run: | - cp client-api_python/pysirius_api.py client-api_python/generated/PySirius - cp client-api_python/pysirius_sdk.py client-api_python/generated/PySirius - cp client-api_python/pysirius_helper.py client-api_python/generated/PySirius + cp pysirius_api.py generated/PySirius + cp pysirius_sdk.py generated/PySirius + cp pysirius_helper.py generated/PySirius - chmod +x ./client-api_python/formatting/format_init.sh - ./client-api_python/formatting/format_init.sh + chmod +x ./formatting/format_init.sh + ./formatting/format_init.sh + working-directory: client-api_python - name: Format R package run: | - cp client-api_r/rsirius_sdk.R client-api_r/generated/R/rsirius_sdk.R - cp client-api_r/rsirius_helper.R client-api_r/generated/R/rsirius_helper.R - echo >> client-api_r/generated/NAMESPACE - echo "# SDK" >> client-api_r/generated/NAMESPACE - echo "export(SiriusSDK)" >> client-api_r/generated/NAMESPACE - echo "export(Helper)" >> client-api_r/generated/NAMESPACE + cp rsirius_sdk.R generated/R/rsirius_sdk.R + cp rsirius_helper.R generated/R/rsirius_helper.R + echo >> generated/NAMESPACE + echo "# SDK" >> generated/NAMESPACE + echo "export(SiriusSDK)" >> generated/NAMESPACE + echo "export(Helper)" >> generated/NAMESPACE - chmod +x ./client-api_r/patches/list_syntax_fix.sh - ./client-api_r/patches/list_syntax_fix.sh + chmod +x ./patches/list_syntax_fix.sh + ./patches/list_syntax_fix.sh - chmod +x ./client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh - ./client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh + chmod +x ./patches/insert_wait_for_job_completion_in_rsirius_api.sh + ./patches/insert_wait_for_job_completion_in_rsirius_api.sh + working-directory: client-api_r - name: Remove Sirius Rest Api run: | - cd .updater/api rm -rf *sirius* rm -rf releases.json echo "Done" + working-directory: .updater/api - name: Remove Openapi Generator Files run: | rm -rf .updater/openapi_generator From 340464053c39e8cc42f12ac1d129ef61aa6a33b0 Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 18:36:14 +0100 Subject: [PATCH 12/14] adapt paths in patch/format scripts --- client-api_python/formatting/format_init.sh | 2 +- .../patches/insert_wait_for_job_completion_in_rsirius_api.sh | 2 +- client-api_r/patches/list_syntax_fix.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client-api_python/formatting/format_init.sh b/client-api_python/formatting/format_init.sh index 19e8dcde..e348ae6e 100755 --- a/client-api_python/formatting/format_init.sh +++ b/client-api_python/formatting/format_init.sh @@ -1,6 +1,6 @@ #!/bin/bash -file="./client-api_python/generated/PySirius/__init__.py" +file="./generated/PySirius/__init__.py" # Use sed to insert the new items before the closing bracket sed -i '/^]$/i\ "PySiriusAPI",\n "SiriusSDK",\n "Helper",' "$file" diff --git a/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh b/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh index 08aaae2c..10906c80 100755 --- a/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh +++ b/client-api_r/patches/insert_wait_for_job_completion_in_rsirius_api.sh @@ -1,6 +1,6 @@ #!/bin/bash -FILE="client-api_r/generated/R/rsirius_api.R" +FILE="generated/R/rsirius_api.R" # Remove the last 3 lines (closing braces) head -n -3 "$FILE" > "${FILE}.tmp" diff --git a/client-api_r/patches/list_syntax_fix.sh b/client-api_r/patches/list_syntax_fix.sh index 42fc5a50..28bbf1b6 100755 --- a/client-api_r/patches/list_syntax_fix.sh +++ b/client-api_r/patches/list_syntax_fix.sh @@ -1,7 +1,7 @@ #!/bin/bash # Specify the folder path -folder_path="./client-api_r/generated/R" +folder_path="./generated/R" # Change directory to the specified folder cd "$folder_path" || exit From a44e964fc2822378146c14251f588dcf79f239db Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 17:39:18 +0000 Subject: [PATCH 13/14] Auto-Updated OpenAPI Clients --- .updater/api/api-docs-enums.json | 11308 +++++++++++++++++++++++++- .updater/api/api-docs-strings.json | 11678 ++++++++++++++++++++++++++- 2 files changed, 22984 insertions(+), 2 deletions(-) diff --git a/.updater/api/api-docs-enums.json b/.updater/api/api-docs-enums.json index 67fd4906..b3115e3e 100644 --- a/.updater/api/api-docs-enums.json +++ b/.updater/api/api-docs-enums.json @@ -1 +1,11307 @@ -{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Gui","description":"GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfoOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/gui":{"post":{"tags":["Gui"],"summary":"Open GUI instance on specified project-space and bring the GUI window to foreground.","description":"Open GUI instance on specified project-space and bring the GUI window to foreground.","operationId":"openGui","parameters":[{"name":"projectId","in":"path","description":"of project-space the GUI instance will connect to.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"}}},"delete":{"tags":["Gui"],"summary":"Close GUI instance of given project-space if available.","description":"Close GUI instance of given project-space if available.","operationId":"closeGui","parameters":[{"name":"projectId","in":"path","description":"if project-space the GUI instance is connected to.","required":true,"schema":{"type":"string"}},{"name":"closeProject","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"$ref":"#/components/schemas/InstrumentProfile"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/JobOptField"},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatchOptField"},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateOptField"},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeatureOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/guis":{"get":{"tags":["Gui"],"summary":"Get list of currently running gui windows, managed by this SIRIUS instance.","description":"Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!","operationId":"getGuis","responses":{"200":{"description":"List of GUI windows that are currently managed by this SIRIUS instance.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GuiInfo"}}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"$ref":"#/components/schemas/AggregationType"}},{"name":"quantification","in":"query","required":false,"schema":{"$ref":"#/components/schemas/QuantMeasure"}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"$ref":"#/components/schemas/ProjectEventType"},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectEventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"ProjectInfoOptField":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"$ref":"#/components/schemas/ProjectType"},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"ProjectType":{"type":"string","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"ValueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"$ref":"#/components/schemas/ValueType"},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"JobOptField":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"$ref":"#/components/schemas/JobEffect"}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobEffect":{"type":"string","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"$ref":"#/components/schemas/JobState"},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"JobState":{"type":"string","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"AggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"QuantMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"$ref":"#/components/schemas/SpectralMatchType"},"inchiKey":{"type":"string"},"referenceSpectrumType":{"$ref":"#/components/schemas/SpectrumType"},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"$ref":"#/components/schemas/SpectrumType"}},"nullable":true},"SpectralMatchType":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"SpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"ConfidenceMode":{"type":"string","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"InstrumentProfile":{"type":"string","description":"Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.","nullable":true,"enum":["QTOF","ORBITRAP"]},"IsotopeMs2Strategy":{"type":"string","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"$ref":"#/components/schemas/InstrumentProfile"},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"$ref":"#/components/schemas/IsotopeMs2Strategy"},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"$ref":"#/components/schemas/SpectralMatchingType"},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"SpectralMatchingType":{"type":"string","nullable":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"$ref":"#/components/schemas/ConfidenceMode"}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"DataQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"$ref":"#/components/schemas/DataQuality"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"CompoundOptField":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"AlignedFeatureOptField":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"$ref":"#/components/schemas/DataQuality"},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/CompoundClassType"},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClassType":{"type":"string","description":"Defines compound class ontologies that are available.","nullable":true,"enum":["ClassyFire","NPC"]},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionCSI"},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"$ref":"#/components/schemas/ConsensusCriterionDeNovo"}},"nullable":true},"ConsensusCriterionCSI":{"type":"string","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"ConsensusCriterionDeNovo":{"type":"string","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"$ref":"#/components/schemas/ConfidenceMode"},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"$ref":"#/components/schemas/Cyp450Mode"},"p2Mode":{"$ref":"#/components/schemas/P2Mode"},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"$ref":"#/components/schemas/MetabolicTransformation"},"iterations":{"type":"integer","format":"int32"}}},"Cyp450Mode":{"type":"string","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"MetabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"P2Mode":{"type":"string","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/TraceAnnotationTypeExperimental"},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceAnnotationTypeExperimental":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantRowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"$ref":"#/components/schemas/AggregationType"},"quantification":{"$ref":"#/components/schemas/QuantMeasure"},"quantType":{"$ref":"#/components/schemas/QuantRowType"},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"$ref":"#/components/schemas/StatisticsType"},"aggregationType":{"$ref":"#/components/schemas/AggregationType"},"quantificationMeasure":{"$ref":"#/components/schemas/QuantMeasure"},"rowType":{"$ref":"#/components/schemas/QuantRowType"},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"StatisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"SpectralLibraryMatchOptField":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"$ref":"#/components/schemas/DataQuality"},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"$ref":"#/components/schemas/DataQuality"},"weight":{"$ref":"#/components/schemas/QualityWeight"}}},"QualityWeight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]},"FormulaCandidateOptField":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"StructureCandidateOptField":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"$ref":"#/components/schemas/Solver"}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"Solver":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]},"GuiInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"The project this instance is running on"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"$ref":"#/components/schemas/ConnectionErrorType"},"errorKlass":{"$ref":"#/components/schemas/ConnectionErrorClass"},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"ConnectionErrorClass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"ConnectionErrorType":{"type":"string","enum":["WARNING","ERROR"]},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"ApiVersion":{"type":"string","enum":["V2","V3"]},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file +{ + "openapi": "3.0.1", + "info": { + "title": "SIRIUS Nightsky API", + "description": "REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6", + "version": "3.1" + }, + "servers": [ + { + "url": "http://localhost:8080", + "description": "Generated server url" + } + ], + "tags": [ + { + "name": "Info", + "description": "Status und Information" + }, + { + "name": "Feature Statistics", + "description": "[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Jobs", + "description": "Start, monitor and cancel background jobs." + }, + { + "name": "Compounds", + "description": "This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)" + }, + { + "name": "Gui", + "description": "GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects." + }, + { + "name": "Projects", + "description": "Manage SIRIUS projects." + }, + { + "name": "Runs", + "description": "[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Compound Statistics", + "description": "[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Tags", + "description": "[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Login and Account", + "description": "Perform signIn, signOut and signUp. Get tokens and account information." + }, + { + "name": "Actuator", + "description": "Monitor and interact", + "externalDocs": { + "description": "Spring Boot Actuator Web API Documentation", + "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" + } + }, + { + "name": "Searchable Databases", + "description": "Manage structure and spectral databases that can be used by various computational methods." + }, + { + "name": "Features", + "description": "This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries." + } + ], + "paths": { + "/api/projects/{projectId}": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get project space info by its projectId.", + "description": "Get project space info by its projectId.", + "operationId": "getProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier tof the project-space to be accessed.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectInfoOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "put": { + "tags": [ + "Projects" + ], + "summary": "Open an existing project-space and make it accessible via the given projectId.", + "description": "Open an existing project-space and make it accessible via the given projectId.", + "operationId": "openProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pathToProject", + "in": "query", + "description": "local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", + "required": false, + "deprecated": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectInfoOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "post": { + "tags": [ + "Projects" + ], + "summary": "Create and open a new project-space at given location and make it accessible via the given projectId.", + "description": "Create and open a new project-space at given location and make it accessible via the given projectId.", + "operationId": "createProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pathToProject", + "in": "query", + "description": "local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", + "required": false, + "deprecated": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectInfoOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Projects" + ], + "summary": "Close project-space and remove it from the application", + "description": "Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.", + "operationId": "closeProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier of the project-space to be closed.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compact", + "in": "query", + "description": "if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.", + "required": false, + "deprecated": true, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/tags": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get all tag definitions in the given project-space", + "description": "[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTags", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagType", + "in": "query", + "description": "scope of the tag (optional)", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag definitions.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Add tags to the project", + "description": "[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "createTags", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "the tag definitions to be created", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinitionImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the definitions of the tags that have been created", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{runId}": { + "put": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Add tags to a run in the project", + "description": "[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "run to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/blanksubtract/compute": { + "put": { + "tags": [ + "Runs" + ], + "summary": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter", + "description": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

", + "operationId": "computeFoldChangeForBlankSubtraction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "description": "request with lists of run IDs that are sample, blank, and control runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SampleTypeFoldChangeRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{compoundId}": { + "put": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Tags with the same name will be overwritten", + "description": "[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound (group of ion identities) to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchange/compute": { + "put": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", + "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "computeCompoundFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + }, + "put": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.", + "description": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.", + "operationId": "addDeNovoStructureCandidate", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "smiles", + "in": "query", + "description": "smiles", + "required": false, + "schema": { + "type": "string", + "default": "none" + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}": { + "put": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project", + "description": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "run to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchange/compute": { + "put": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", + "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "computeAlignedFeatureFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/delete": { + "put": { + "tags": [ + "Features" + ], + "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "deleteAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/databases/{databaseId}": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "put": { + "tags": [ + "Searchable Databases" + ], + "operationId": "updateDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabaseParameters" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "post": { + "tags": [ + "Searchable Databases" + ], + "operationId": "createDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "pattern": "^[a-zA-Z0-9-_]+$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabaseParameters" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Searchable Databases" + ], + "operationId": "removeDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "delete", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/subscriptions/select-active": { + "put": { + "tags": [ + "Login and Account" + ], + "summary": "Select a subscription as active subscription to be used for computations.", + "description": "Select a subscription as active subscription to be used for computations.", + "operationId": "selectSubscription", + "parameters": [ + { + "name": "sid", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Account information with updated active subscription", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get List of all available jobs with information such as current state and progress (if available).", + "description": "Get List of all available jobs with information such as current state and progress (if available).", + "operationId": "getJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Jobs" + ], + "summary": "Start computation for given compounds and with given parameters.", + "description": "Start computation for given compounds and with given parameters.", + "operationId": "startJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "command", + "progress" + ] + } + } + ], + "requestBody": { + "description": "configuration of the job that will be submitted of the job to be returned", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "* Delete ALL jobs.", + "description": "* Delete ALL jobs. Specify how to behave for running jobs.", + "operationId": "deleteJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete jobs from", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cancelIfRunning", + "in": "query", + "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "awaitDeletion", + "in": "query", + "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/projects/{projectId}/jobs/from-config": { + "post": { + "tags": [ + "Jobs" + ], + "summary": "Start computation for given compounds and with parameters from a stored job-config.", + "description": "Start computation for given compounds and with parameters from a stored job-config.", + "operationId": "startJobFromConfig", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobConfigName", + "in": "query", + "description": "name if the config to be used", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recompute", + "in": "query", + "description": "enable or disable recompute. If null the stored value will be used.", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "command", + "progress" + ] + } + } + ], + "requestBody": { + "description": "List of alignedFeatureIds to be computed", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/preprocessed-data-files": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", + "description": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", + "operationId": "importPreprocessedData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreFormulas", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "allowMs1Only", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "files to import into project", + "items": { + "type": "string", + "format": "binary" + } + } + } + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportResult" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/preprocessed-data-files-job": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import ms/ms data from the given format into the specified project-space as background job.", + "description": "Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)", + "operationId": "importPreprocessedDataAsJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreFormulas", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "allowMs1Only", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "items": { + "type": "string", + "format": "binary" + } + } + } + } + } + } + }, + "responses": { + "200": { + "description": "the import job.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/ms-data-files": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", + "description": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", + "operationId": "importMsRunData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles", + "parameters" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "Files to import into project.", + "items": { + "type": "string", + "format": "binary" + } + }, + "parameters": { + "$ref": "#/components/schemas/LcmsSubmissionParameters" + } + } + }, + "encoding": { + "parameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportResult" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/ms-data-files-job": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import and Align full MS-Runs from various formats into the specified project as background job.", + "description": "Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)", + "operationId": "importMsRunDataAsJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "Set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles", + "parameters" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "Files to import into project.", + "items": { + "type": "string", + "format": "binary" + } + }, + "parameters": { + "$ref": "#/components/schemas/LcmsSubmissionParameters" + } + } + }, + "encoding": { + "parameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "the import job.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/gui": { + "post": { + "tags": [ + "Gui" + ], + "summary": "Open GUI instance on specified project-space and bring the GUI window to foreground.", + "description": "Open GUI instance on specified project-space and bring the GUI window to foreground.", + "operationId": "openGui", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "of project-space the GUI instance will connect to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "201": { + "description": "Created" + } + } + }, + "delete": { + "tags": [ + "Gui" + ], + "summary": "Close GUI instance of given project-space if available.", + "description": "Close GUI instance of given project-space if available.", + "operationId": "closeGui", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "if project-space the GUI instance is connected to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "closeProject", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/groups/{groupName}": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get tag group by name in the given project-space", + "description": "[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getGroupByName", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of the group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + }, + "post": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Group tags in the project", + "description": "[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addGroup", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of the new group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "filter query to create the group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "type of the group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tag group that was added", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space", + "description": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteGroup", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of group to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "List of all available compounds (group of ion identities) in the given project-space.", + "description": "List of all available compounds (group of ion identities) in the given project-space.", + "operationId": "getCompounds", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Compounds" + ], + "summary": "Import Compounds and its contained features.", + "description": "Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.", + "operationId": "addCompounds", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "profile", + "in": "query", + "description": "profile describing the instrument used to measure the data. Used to merge spectra.", + "required": false, + "schema": { + "$ref": "#/components/schemas/InstrumentProfile" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "description": "set of optional fields of the nested features to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "requestBody": { + "description": "the compound data to be imported", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the Compounds that have been imported with specified optional fields", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get all available features (aligned over runs) in the given project-space.", + "description": "Get all available features (aligned over runs) in the given project-space.", + "operationId": "getAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Features" + ], + "summary": "Import (aligned) features into the project.", + "description": "Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.", + "operationId": "addAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "profile", + "in": "query", + "description": "profile describing the instrument used to measure the data. Used to merge spectra.", + "required": false, + "schema": { + "$ref": "#/components/schemas/InstrumentProfile" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "requestBody": { + "description": "the feature data to be imported", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FeatureImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the Features that have been imported with specified optional fields", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + } + } + }, + "/api/job-configs/{name}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request job configuration with given name.", + "description": "Request job configuration with given name.", + "operationId": "getJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "{@link JobSubmission JobSubmission} for given name.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + }, + "post": { + "tags": [ + "Jobs" + ], + "summary": "Add new job configuration with given name.", + "description": "Add new job configuration with given name.", + "operationId": "saveJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to add", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "overrideExisting", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "to add", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "Delete job configuration with given name.", + "description": "Delete job configuration with given name.", + "operationId": "deleteJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to delete", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/job-configs/get-command": { + "post": { + "tags": [ + "Jobs" + ], + "summary": "Get a CLI command for the given job configuration.", + "description": "Get a CLI command for the given job configuration.", + "operationId": "getCommand", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + }, + "/api/databases": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeWithErrors", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Searchable Databases" + ], + "summary": "DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.", + "operationId": "addDatabases", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "deprecated": true + } + }, + "/api/databases/{databaseId}/import/from-files": { + "post": { + "tags": [ + "Searchable Databases" + ], + "summary": "Start import of structure and spectra files into the specified database.", + "description": "Start import of structure and spectra files into the specified database.", + "operationId": "importIntoDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "description": "database to import into", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "bufferSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1000 + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "files to be imported", + "items": { + "type": "string", + "format": "binary" + } + }, + "bioTransformerParameters": { + "$ref": "#/components/schemas/BioTransformerParameters" + } + } + }, + "encoding": { + "bioTransformerParameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "Meta-Information of the affected database after the import has been performed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + }, + "/api/account/logout": { + "post": { + "tags": [ + "Login and Account" + ], + "summary": "Logout from SIRIUS web services.", + "description": "Logout from SIRIUS web services.", + "operationId": "logout", + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/login": { + "post": { + "tags": [ + "Login and Account" + ], + "summary": "Login into SIRIUS web services and activate default subscription if available.", + "description": "Login into SIRIUS web services and activate default subscription if available.", + "operationId": "login", + "parameters": [ + { + "name": "acceptTerms", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + }, + { + "name": "failWhenLoggedIn", + "in": "query", + "description": "if true request fails if an active login already exists.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeSubs", + "in": "query", + "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "used to log in.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountCredentials" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Basic information about the account that has been logged in and its subscriptions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/actuator/shutdown": { + "post": { + "tags": [ + "Actuator" + ], + "summary": "Actuator web endpoint 'shutdown'", + "operationId": "shutdown", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request" + } + } + } + }, + "/api/projects/{projectId}/tags/{tagName}": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get tag definition by its name in the given project-space", + "description": "[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTag", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag definition.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space", + "description": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteTag", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag definition to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + }, + "patch": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Add a possible value to the tag definition in the project", + "description": "[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addPossibleValuesToTagDefinition", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "the tag definition to add the values to", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the definitions of the tags that have been added", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + }, + "/api/projects": { + "get": { + "tags": [ + "Projects" + ], + "summary": "List opened project spaces.", + "description": "List opened project spaces.", + "operationId": "getProjects", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/{runId}": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space", + "description": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "identifier of run to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "Run with tags (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Run" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{objectId}": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Run", + "description": "[EXPERIMENTAL] Get all tags associated with this Run", + "operationId": "getTagsForRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "RunId to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested object", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tagged": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get runs by tag", + "description": "[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunsByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get runs from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/page": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get all available runs in the given project-space", + "description": "[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunPageExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "Runs with tags (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/grouped": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get runs by tag group", + "description": "[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunsByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/npc-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CANOPUS prediction vector definition for NPC classes", + "operationId": "getCanopusNpcData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/jobs/{jobId}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get job information and its current state and progress (if available).", + "description": "Get job information and its current state and progress (if available).", + "operationId": "getJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobId", + "in": "path", + "description": "of the job to be returned", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "Delete job.", + "description": "Delete job. Specify how to behave for running jobs.", + "operationId": "deleteJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete job from", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobId", + "in": "path", + "description": "of the job to be deleted", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cancelIfRunning", + "in": "query", + "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "awaitDeletion", + "in": "query", + "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/projects/{projectId}/jobs/page": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get Page of jobs with information such as current state and progress (if available).", + "description": "Get Page of jobs with information such as current state and progress (if available).", + "operationId": "getJobsPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JobOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelJob" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/has-jobs": { + "get": { + "tags": [ + "Jobs" + ], + "operationId": "hasJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeFinished", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/groups": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get all tag based groups in the given project-space", + "description": "[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getGroups", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupType", + "in": "query", + "description": "type of the group", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Groups.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/fingerid-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CSI:FingerID fingerprint (prediction vector) definition", + "operationId": "getFingerIdData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "Get compound (group of ion identities) with the given identifier from the specified project-space.", + "description": "Get compound (group of ion identities) with the given identifier from the specified project-space.", + "operationId": "getCompound", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "identifier of the compound (group of ion identities) to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Compounds" + ], + "summary": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", + "description": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", + "operationId": "deleteCompound", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "identifier of the compound to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}/traces": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns the traces of the given compound", + "description": "[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound which intensities should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "featureId", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "Traces of the given compound.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}/quant-table-row": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given compound", + "description": "[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundQuantTableRowExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound which should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{objectId}": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Compound", + "description": "[EXPERIMENTAL] Get all tags associated with this Compound", + "operationId": "getTagsForCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "CompoundId to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested Compound", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tagged": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag", + "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundsByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get compounds (group of ion identities) from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged compounds (group of ion identities)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}": { + "get": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", + "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFoldChangesByCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "id of the object the fold changes are assigned to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "fold changes", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FoldChange" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table": { + "get": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", + "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundFoldChangeTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "table of fold changes.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsTable" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/quant-table": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns the full quantification table of compounds", + "description": "[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundQuantTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/page": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "Page of available compounds (group of ion identities) in the given project-space.", + "description": "Page of available compounds (group of ion identities) in the given project-space.", + "operationId": "getCompoundsPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/grouped": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group", + "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundsByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged compounds (group of ion identities)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/cf-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CANOPUS prediction vector definition for ClassyFire classes", + "operationId": "getCanopusClassyFireData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Get feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "getAlignedFeature", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeature with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Features" + ], + "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "deleteAlignedFeature", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature which intensities should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeAll", + "in": "query", + "description": "when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Traces of the given feature.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of spectral library matches for the given 'alignedFeatureId'.", + "description": "List of spectral library matches for the given 'alignedFeatureId'.", + "operationId": "getSpectralLibraryMatches", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatchOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library matches of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "Spectral library match for the given 'alignedFeatureId'.", + "description": "Spectral library match for the given 'alignedFeatureId'.", + "operationId": "getSpectralLibraryMatch", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "matchId", + "in": "path", + "description": "id of the library match to be returned.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatchOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library match with requested mathcId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations", + "description": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedSpectralLibraryMatchExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "matchId", + "in": "path", + "description": "id of the library match to be returned.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Spectral library match with requested mathcId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary": { + "get": { + "tags": [ + "Features" + ], + "summary": "Summarize matched reference spectra for the given 'alignedFeatureId'.", + "description": "Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.", + "operationId": "getSpectralLibraryMatchesSummary", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "description": "min threshold of shared peaks.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "description": "min spectral similarity threshold.", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "description": "2D inchi key of the compound in the structure database.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpectralLibraryMatchSummary" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of spectral library matches for the given 'alignedFeatureId'.", + "description": "Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.", + "operationId": "getSpectralLibraryMatchesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatchOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library matches of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelSpectralLibraryMatch" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getQuantTableRowExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature which quantity should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "Quant table row for this feature", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ", + "description": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeatureQualityExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to access.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatureQuality quality information of the respective feature.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AlignedFeatureQualityExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data": { + "get": { + "tags": [ + "Features" + ], + "summary": "Mass Spec data (input data) for the given 'alignedFeatureId' .", + "description": "Mass Spec data (input data) for the given 'alignedFeatureId' .", + "operationId": "getMsData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the Mass Spec data belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Mass Spec data of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of FormulaResultContainers available for this feature with minimal information.", + "description": "List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", + "operationId": "getFormulaCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "All FormulaCandidate of this feature with.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidate" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "FormulaResultContainers for the given 'formulaId' with minimal information.", + "description": "FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.", + "operationId": "getFormulaCandidate", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "FormulaCandidate of this feature (aligned over runs) with.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FormulaCandidate" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ", + "description": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedSpectrumExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inchiKey", + "in": "path", + "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "spectrumIndex", + "in": "query", + "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": -1 + } + }, + { + "name": "searchPrepared", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragments and sub-structures.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey", + "description": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedMsDataExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inchiKey", + "in": "path", + "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragments and sub-structures.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedMsMsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns Lipid annotation (ElGordo) for the given formulaId", + "description": "Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.", + "operationId": "getLipidAnnotation", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "LipidAnnotation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LipidAnnotation" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns Isotope pattern information for given formulaId\n ", + "description": "Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).", + "operationId": "getIsotopePatternAnnotation", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Isotope pattern information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IsotopePatternAnnotation" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ", + "description": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).", + "operationId": "getFragTree", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Fragmentation Tree", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FragmentationTree" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ", + "description": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.", + "operationId": "getFingerprintPrediction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "probabilistic fingerprint predicted by CSI:FingerID", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesByFormula", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesByFormulaPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateScored" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", + "description": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesByFormula", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", + "description": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesByFormulaPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateScored" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction": { + "get": { + "tags": [ + "Features" + ], + "summary": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", + "description": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", + "operationId": "getCanopusPrediction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Predicted compound classes", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CanopusPrediction" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes": { + "get": { + "tags": [ + "Features" + ], + "summary": "Return Best matching compound classes for given formulaId", + "description": "Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,", + "operationId": "getBestMatchingCompoundClasses", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Best matching Predicted compound classes", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CompoundClasses" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns a fragmentation spectrum (e", + "description": "Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.", + "operationId": "getFormulaAnnotatedSpectrum", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "spectrumIndex", + "in": "query", + "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": -1 + } + }, + { + "name": "searchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragment formulas and losses.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId", + "description": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.", + "operationId": "getFormulaAnnotatedMsMsData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectra annotated with fragment formulas and losses.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedMsMsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of FormulaResultContainers available for this feature with minimal information.", + "description": "Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", + "operationId": "getFormulaCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "All FormulaCandidate of this feature with.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelFormulaCandidate" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", + "description": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", + "description": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network", + "description": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAdductNetworkWithMergedTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "one feature that is considered the main feature of the adduct network", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{objectId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Object", + "description": "[EXPERIMENTAL] Get all tags associated with this Object", + "operationId": "getTagsForAlignedFeaturesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "object to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested object", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tagged": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag", + "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeaturesByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get features (aligned over runs) from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged features (aligned over runs)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}": { + "get": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", + "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFoldChangesByAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "id of the object the fold changes are assigned to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "fold changes", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FoldChange" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table": { + "get": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", + "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeatureFoldChangeTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "table of fold changes.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsTable" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/quant-table": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFeatureQuantTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "Quant table if akk feature in this project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get all available features (aligned over runs) in the given project-space.", + "description": "Get all available features (aligned over runs) in the given project-space.", + "operationId": "getAlignedFeaturesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/grouped": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag group", + "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeaturesByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeatureOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged features (aligned over runs)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/job-configs": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request all available job configurations", + "description": "Request all available job configurations", + "operationId": "getJobConfigs", + "responses": { + "200": { + "description": "list of available {@link JobSubmission JobSubmission}s", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + } + } + }, + "/api/job-config-names": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "[DEPRECATED] Get all (non-default) job configuration names\n ", + "description": "[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.", + "operationId": "getJobConfigNames", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "deprecated": true + } + }, + "/api/info": { + "get": { + "tags": [ + "Info" + ], + "operationId": "getInfo", + "parameters": [ + { + "name": "serverInfo", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "updateInfo", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Info" + } + } + } + } + } + } + }, + "/api/guis": { + "get": { + "tags": [ + "Gui" + ], + "summary": "Get list of currently running gui windows, managed by this SIRIUS instance.", + "description": "Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!", + "operationId": "getGuis", + "responses": { + "200": { + "description": "List of GUI windows that are currently managed by this SIRIUS instance.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GuiInfo" + } + } + } + } + } + } + } + }, + "/api/default-job-config": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request default job configuration", + "description": "Request default job configuration", + "operationId": "getDefaultJobConfig", + "parameters": [ + { + "name": "includeConfigMap", + "in": "query", + "description": "if true, generic configmap with-defaults will be included", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeCustomDbsForStructureSearch", + "in": "query", + "description": "if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "{@link JobSubmission JobSubmission} with all parameters set to default values.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + } + } + } + } + }, + "/api/databases/included": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getIncludedDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + } + }, + "/api/databases/custom": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getCustomDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeWithErrors", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + } + }, + "/api/connection-status": { + "get": { + "tags": [ + "Info" + ], + "operationId": "getConnectionCheck", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionCheck" + } + } + } + } + } + } + }, + "/api/account/subscriptions": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get available subscriptions of the account currently logged in.", + "description": "Get available subscriptions of the account currently logged in. Fails if not logged in.", + "operationId": "getSubscriptions", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Subscription" + } + } + } + } + } + } + } + }, + "/api/account/signUp": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Open SignUp window in system browser and return signUp link.", + "description": "Open SignUp window in system browser and return signUp link.", + "operationId": "signUp", + "responses": { + "200": { + "description": "OK", + "content": { + "text/plain;charset=UTF-8": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/account/signUpURL": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get SignUp URL (For signUp via web browser)", + "description": "Get SignUp URL (For signUp via web browser)", + "operationId": "getSignUpURL", + "responses": { + "200": { + "description": "OK", + "content": { + "text/plain;charset=UTF-8": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/account/openPortal": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Open User portal in browser.", + "description": "Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.", + "operationId": "openPortal", + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/isLoggedIn": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Check if a user is logged in.", + "description": "Check if a user is logged in.", + "operationId": "isLoggedIn", + "responses": { + "200": { + "description": "true if the user is logged in", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/account/": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get information about the account currently logged in.", + "description": "Get information about the account currently logged in. Fails if not logged in.", + "operationId": "getAccountInfo", + "parameters": [ + { + "name": "includeSubs", + "in": "query", + "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Basic information about the account that has been logged in and its subscriptions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/actuator/health": { + "get": { + "tags": [ + "Actuator" + ], + "summary": "Actuator web endpoint 'health'", + "operationId": "health", + "responses": { + "200": { + "description": "OK", + "content": { + "application/vnd.spring-boot.actuator.v3+json": { + "schema": { + "type": "object" + } + }, + "application/vnd.spring-boot.actuator.v2+json": { + "schema": { + "type": "object" + } + }, + "application/json": { + "schema": { + "type": "object" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{runId}/{tagName}": { + "delete": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "run to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}": { + "delete": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound (group of ion identities) to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges": { + "delete": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Delete fold changes", + "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteCompoundFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}": { + "delete": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges": { + "delete": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Delete fold changes", + "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteAlignedFeatureFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/AggregationType" + } + }, + { + "name": "quantification", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/QuantMeasure" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + } + }, + "components": { + "schemas": { + "ProjectChangeEvent": { + "type": "object", + "properties": { + "eventType": { + "$ref": "#/components/schemas/ProjectEventType" + }, + "projectId": { + "type": "string" + }, + "compoundId": { + "type": "string", + "nullable": true + }, + "featuredId": { + "type": "string", + "nullable": true + }, + "formulaId": { + "type": "string", + "nullable": true + }, + "structureInChIKey": { + "type": "string", + "nullable": true + } + } + }, + "DataImportEvent": { + "required": [ + "importedCompoundIds", + "importedFeatureIds" + ], + "type": "object", + "properties": { + "importJobId": { + "type": "string", + "nullable": true + }, + "importedCompoundIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "importedFeatureIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "BackgroundComputationsStateEvent": { + "required": [ + "affectedJobs", + "numberOfFinishedJobs", + "numberOfJobs", + "numberOfRunningJobs" + ], + "type": "object", + "properties": { + "affectedJobs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + }, + "numberOfJobs": { + "type": "integer", + "format": "int32" + }, + "numberOfRunningJobs": { + "type": "integer", + "format": "int32" + }, + "numberOfFinishedJobs": { + "type": "integer", + "format": "int32" + } + } + }, + "ProjectEventType": { + "type": "string", + "enum": [ + "PROJECT_OPENED", + "PROJECT_MOVED", + "PROJECT_CLOSED", + "FEATURE_CREATED", + "FEATURE_UPDATED", + "FEATURE_DELETED", + "RESULT_CREATED", + "RESULT_UPDATED", + "RESULT_DELETED" + ] + }, + "ProjectInfoOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "compatibilityInfo", + "sizeInformation" + ] + }, + "ProjectInfo": { + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "a user selected unique name of the project for easy access." + }, + "location": { + "type": "string", + "description": "storage location of the project." + }, + "description": { + "type": "string", + "description": "Description of this project.", + "nullable": true + }, + "type": { + "$ref": "#/components/schemas/ProjectType" + }, + "compatible": { + "type": "boolean", + "description": "Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.", + "nullable": true + }, + "numOfFeatures": { + "type": "integer", + "description": "Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').", + "format": "int32", + "nullable": true + }, + "numOfCompounds": { + "type": "integer", + "description": "Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.", + "format": "int32", + "nullable": true + }, + "numOfBytes": { + "type": "integer", + "description": "Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').", + "format": "int64", + "nullable": true + } + } + }, + "ProjectType": { + "type": "string", + "nullable": true, + "enum": [ + "UNIMPORTED", + "DIRECT_IMPORT", + "PEAKLISTS", + "ALIGNED_RUNS", + "UNALIGNED_RUNS" + ] + }, + "TagDefinitionImport": { + "required": [ + "tagName", + "valueType" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of this tag defined by this definition (key)" + }, + "description": { + "type": "string", + "description": "A human-readable description about the purpose of this tag.", + "nullable": true + }, + "tagType": { + "type": "string", + "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", + "nullable": true + }, + "valueType": { + "$ref": "#/components/schemas/ValueType" + }, + "possibleValues": { + "type": "array", + "nullable": true, + "items": { + "type": "object", + "nullable": true + } + }, + "minValue": { + "type": "object", + "nullable": true + }, + "maxValue": { + "type": "object", + "nullable": true + } + } + }, + "ValueType": { + "type": "string", + "enum": [ + "NONE", + "BOOLEAN", + "INTEGER", + "REAL", + "TEXT", + "DATE", + "TIME" + ] + }, + "TagDefinition": { + "required": [ + "tagName", + "valueType" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of this tag defined by this definition (key)" + }, + "description": { + "type": "string", + "description": "A human-readable description about the purpose of this tag.", + "nullable": true + }, + "tagType": { + "type": "string", + "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", + "nullable": true + }, + "valueType": { + "$ref": "#/components/schemas/ValueType" + }, + "possibleValues": { + "type": "array", + "nullable": true, + "items": { + "type": "object", + "nullable": true + } + }, + "minValue": { + "type": "object", + "nullable": true + }, + "maxValue": { + "type": "object", + "nullable": true + }, + "editable": { + "type": "boolean" + } + } + }, + "Tag": { + "required": [ + "tagName" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition." + }, + "value": { + "type": "object", + "description": "Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).", + "nullable": true + } + } + }, + "SampleTypeFoldChangeRequest": { + "type": "object", + "properties": { + "sampleRunIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "blankRunIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "controlRunIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "JobOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "Job": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier to access the job via the API" + }, + "command": { + "type": "string", + "description": "Command string of the executed Task", + "nullable": true + }, + "progress": { + "$ref": "#/components/schemas/JobProgress" + }, + "affectedCompoundIds": { + "type": "array", + "description": "List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "affectedAlignedFeatureIds": { + "type": "array", + "description": "List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "jobEffect": { + "$ref": "#/components/schemas/JobEffect" + } + }, + "description": "Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal." + }, + "JobEffect": { + "type": "string", + "nullable": true, + "enum": [ + "IMPORT", + "COMPUTATION", + "DELETION" + ] + }, + "JobProgress": { + "type": "object", + "properties": { + "indeterminate": { + "type": "boolean", + "description": "Is the progress indeterminate or not", + "nullable": true + }, + "state": { + "$ref": "#/components/schemas/JobState" + }, + "currentProgress": { + "type": "integer", + "description": "Current progress value of the job.", + "format": "int64", + "nullable": true + }, + "maxProgress": { + "type": "integer", + "description": "Progress value to reach (might also change during execution)", + "format": "int64", + "nullable": true + }, + "message": { + "type": "string", + "description": "Progress information and warnings.", + "nullable": true + }, + "errorMessage": { + "type": "string", + "description": "Error message if the job did not finish successfully failed.", + "nullable": true + } + }, + "description": "Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.", + "nullable": true + }, + "JobState": { + "type": "string", + "enum": [ + "WAITING", + "READY", + "QUEUED", + "SUBMITTED", + "RUNNING", + "CANCELED", + "FAILED", + "DONE" + ] + }, + "AggregationType": { + "type": "string", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + }, + "QuantMeasure": { + "type": "string", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + }, + "BasicSpectrum": { + "required": [ + "cosineQuery", + "peaks" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Optional Displayable name of this spectrum.", + "nullable": true + }, + "msLevel": { + "type": "integer", + "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", + "format": "int32", + "nullable": true + }, + "collisionEnergy": { + "type": "string", + "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", + "nullable": true + }, + "instrument": { + "type": "string", + "description": "Instrument information.", + "nullable": true + }, + "precursorMz": { + "type": "number", + "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", + "format": "double", + "nullable": true + }, + "scanNumber": { + "type": "integer", + "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", + "format": "int32", + "nullable": true + }, + "cosineQuery": { + "type": "boolean", + "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", + "default": false + }, + "precursorPeak": { + "$ref": "#/components/schemas/SimplePeak" + }, + "peaks": { + "type": "array", + "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", + "items": { + "$ref": "#/components/schemas/SimplePeak" + } + }, + "absIntensityFactor": { + "type": "number", + "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", + "format": "double", + "nullable": true, + "deprecated": true + }, + "maxNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to MAX norm.", + "format": "double", + "nullable": true + }, + "sumNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to SUM norm.", + "format": "double", + "nullable": true + }, + "l2NormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", + "format": "double", + "nullable": true + }, + "firstPeakNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "BinaryFingerprint": { + "type": "object", + "properties": { + "bitsSet": { + "type": "array", + "description": "Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)", + "items": { + "type": "integer", + "format": "int32" + } + }, + "length": { + "type": "integer", + "description": "Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits", + "format": "int32" + } + }, + "nullable": true + }, + "DBLink": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "nullable": true + }, + "PeakPair": { + "required": [ + "queryPeak", + "referencePeak" + ], + "type": "object", + "properties": { + "queryPeak": { + "type": "integer", + "format": "int32" + }, + "referencePeak": { + "type": "integer", + "format": "int32" + } + } + }, + "SimplePeak": { + "type": "object", + "properties": { + "mz": { + "type": "number", + "format": "double" + }, + "intensity": { + "type": "number", + "format": "double" + } + } + }, + "SpectralLibraryMatch": { + "required": [ + "inchiKey", + "querySpectrumIndex", + "similarity", + "uuid" + ], + "type": "object", + "properties": { + "specMatchId": { + "type": "string" + }, + "rank": { + "type": "integer", + "format": "int32" + }, + "similarity": { + "type": "number", + "description": "Similarity between query and reference spectrum", + "format": "float" + }, + "sharedPeaks": { + "type": "integer", + "description": "Number of shared/matched peaks", + "format": "int32" + }, + "sharedPeakMapping": { + "type": "array", + "description": "List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)", + "items": { + "$ref": "#/components/schemas/PeakPair" + } + }, + "querySpectrumIndex": { + "type": "integer", + "format": "int32" + }, + "dbName": { + "type": "string" + }, + "dbId": { + "type": "string" + }, + "uuid": { + "type": "integer", + "format": "int64" + }, + "splash": { + "type": "string" + }, + "molecularFormula": { + "type": "string" + }, + "adduct": { + "type": "string" + }, + "exactMass": { + "type": "number", + "format": "double" + }, + "smiles": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/SpectralMatchType" + }, + "inchiKey": { + "type": "string" + }, + "referenceSpectrumType": { + "$ref": "#/components/schemas/SpectrumType" + }, + "referenceSpectrum": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "querySpectrumType": { + "$ref": "#/components/schemas/SpectrumType" + } + }, + "nullable": true + }, + "SpectralMatchType": { + "type": "string", + "default": "IDENTITY", + "enum": [ + "IDENTITY", + "ANALOG" + ] + }, + "SpectrumType": { + "type": "string", + "enum": [ + "SPECTRUM", + "MERGED_SPECTRUM" + ] + }, + "StructureCandidateFormula": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + }, + "rank": { + "type": "integer", + "description": "the overall rank of this candidate among all candidates of this feature", + "format": "int32" + }, + "csiScore": { + "type": "number", + "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", + "format": "double" + }, + "tanimotoSimilarity": { + "type": "number", + "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", + "format": "double", + "nullable": true + }, + "mcesDistToTopHit": { + "type": "number", + "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", + "format": "double", + "nullable": true + }, + "fingerprint": { + "$ref": "#/components/schemas/BinaryFingerprint" + }, + "molecularFormula": { + "type": "string", + "description": "Molecular formula of this candidate" + }, + "adduct": { + "type": "string", + "description": "Adduct of this candidate" + }, + "formulaId": { + "type": "string", + "description": "Id of the corresponding Formula candidate" + } + } + }, + "SearchableDatabaseParameters": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "display name of the database\n Should be short", + "nullable": true + }, + "location": { + "type": "string", + "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", + "nullable": true + }, + "matchRtOfReferenceSpectra": { + "type": "boolean", + "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", + "nullable": true, + "default": false + } + } + }, + "SearchableDatabase": { + "required": [ + "customDb", + "databaseId", + "searchable", + "updateNeeded" + ], + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "display name of the database\n Should be short", + "nullable": true + }, + "location": { + "type": "string", + "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", + "nullable": true + }, + "matchRtOfReferenceSpectra": { + "type": "boolean", + "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", + "nullable": true, + "default": false + }, + "databaseId": { + "type": "string", + "description": "A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name." + }, + "customDb": { + "type": "boolean", + "description": "Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified." + }, + "searchable": { + "type": "boolean", + "description": "True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search." + }, + "dbDate": { + "type": "string", + "description": "Date on which the data was imported / database was created.", + "nullable": true + }, + "dbVersion": { + "type": "integer", + "description": "database schema version", + "format": "int32", + "nullable": true + }, + "updateNeeded": { + "type": "boolean", + "description": "If true the database version is outdated and the database needs to be updated or re-imported before it can be used." + }, + "numberOfStructures": { + "type": "integer", + "description": "Number of unique compounds available in this database.", + "format": "int64", + "nullable": true + }, + "numberOfFormulas": { + "type": "integer", + "description": "Number of different molecular formulas available in this database.", + "format": "int64", + "nullable": true + }, + "numberOfReferenceSpectra": { + "type": "integer", + "description": "Number of reference spectra available in this database", + "format": "int64", + "nullable": true + }, + "errorMessage": { + "type": "string", + "description": "Error message if the database could not be loaded", + "nullable": true + } + } + }, + "AccountInfo": { + "type": "object", + "properties": { + "userID": { + "type": "string" + }, + "username": { + "type": "string", + "nullable": true + }, + "userEmail": { + "type": "string" + }, + "gravatarURL": { + "type": "string", + "nullable": true + }, + "subscriptions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Subscription" + } + }, + "activeSubscriptionId": { + "type": "string", + "nullable": true + } + } + }, + "AllowedFeatures": { + "type": "object", + "properties": { + "cli": { + "type": "boolean" + }, + "api": { + "type": "boolean" + }, + "deNovo": { + "type": "boolean" + }, + "importMSRuns": { + "type": "boolean" + }, + "importPeakLists": { + "type": "boolean" + }, + "importCef": { + "type": "boolean" + } + } + }, + "Subscription": { + "type": "object", + "properties": { + "sid": { + "type": "string", + "description": "Unique identifier of this subscription" + }, + "subscriberId": { + "type": "string", + "description": "ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid." + }, + "subscriberName": { + "type": "string", + "description": "Optional name of the owner of this subscription", + "nullable": true + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "startDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "countQueries": { + "type": "boolean", + "nullable": true + }, + "instanceLimit": { + "type": "integer", + "description": "Limit of instances (features) that can be computed with this subscription", + "format": "int32", + "nullable": true + }, + "instanceHashRecordingTime": { + "type": "integer", + "description": "Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is", + "format": "int32", + "nullable": true + }, + "maxQueriesPerInstance": { + "type": "integer", + "description": "Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.", + "format": "int32", + "nullable": true + }, + "maxUserAccounts": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "serviceUrl": { + "type": "string" + }, + "description": { + "type": "string", + "nullable": true + }, + "name": { + "type": "string", + "nullable": true + }, + "tos": { + "type": "string", + "nullable": true + }, + "pp": { + "type": "string", + "nullable": true + }, + "allowedFeatures": { + "$ref": "#/components/schemas/AllowedFeatures" + } + } + }, + "Canopus": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + } + }, + "description": "User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool", + "nullable": true + }, + "ConfidenceMode": { + "type": "string", + "nullable": true, + "enum": [ + "OFF", + "EXACT", + "APPROXIMATE" + ] + }, + "FingerprintPrediction": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "useScoreThreshold": { + "type": "boolean", + "description": "If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.", + "nullable": true + }, + "alwaysPredictHighRefMatches": { + "type": "boolean", + "description": "If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.", + "nullable": true + } + }, + "description": "User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool", + "nullable": true + }, + "InstrumentProfile": { + "type": "string", + "description": "Select the profile that is the closest to your instrumental setup. If nothing fits, use QTOF.", + "nullable": true, + "enum": [ + "QTOF", + "ORBITRAP" + ] + }, + "IsotopeMs2Strategy": { + "type": "string", + "nullable": true, + "enum": [ + "IGNORE", + "FILTER", + "SCORE" + ] + }, + "JobSubmission": { + "type": "object", + "properties": { + "compoundIds": { + "type": "array", + "description": "Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "alignedFeatureIds": { + "type": "array", + "description": "Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "fallbackAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "enforcedAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "detectableAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "recompute": { + "type": "boolean", + "description": "Indicate if already existing result for a tool to be executed should be overwritten or not.", + "nullable": true + }, + "spectraSearchParams": { + "$ref": "#/components/schemas/SpectralLibrarySearch" + }, + "formulaIdParams": { + "$ref": "#/components/schemas/Sirius" + }, + "zodiacParams": { + "$ref": "#/components/schemas/Zodiac" + }, + "fingerprintPredictionParams": { + "$ref": "#/components/schemas/FingerprintPrediction" + }, + "canopusParams": { + "$ref": "#/components/schemas/Canopus" + }, + "structureDbSearchParams": { + "$ref": "#/components/schemas/StructureDbSearch" + }, + "msNovelistParams": { + "$ref": "#/components/schemas/MsNovelist" + }, + "configMap": { + "type": "object", + "additionalProperties": { + "type": "string", + "nullable": true + }, + "description": "As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", + "nullable": true + } + }, + "description": "Object to submit a job to be executed by SIRIUS" + }, + "MsNovelist": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "numberOfCandidateToPredict": { + "type": "integer", + "description": "Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.", + "format": "int32", + "nullable": true + } + }, + "nullable": true + }, + "Sirius": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "profile": { + "$ref": "#/components/schemas/InstrumentProfile" + }, + "numberOfCandidates": { + "type": "integer", + "description": "Number of formula candidates to keep as result list (Formula Candidates).", + "format": "int32", + "nullable": true + }, + "numberOfCandidatesPerIonization": { + "type": "integer", + "description": "Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.", + "format": "int32", + "nullable": true + }, + "massAccuracyMS2ppm": { + "type": "number", + "description": "Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.", + "format": "double", + "nullable": true + }, + "isotopeMs2Settings": { + "$ref": "#/components/schemas/IsotopeMs2Strategy" + }, + "filterByIsotopePattern": { + "type": "boolean", + "description": "When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.", + "nullable": true + }, + "enforceElGordoFormula": { + "type": "boolean", + "description": "El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.", + "nullable": true + }, + "performBottomUpSearch": { + "type": "boolean", + "description": "If true, molecular formula generation via bottom up search is enabled.", + "nullable": true + }, + "performDenovoBelowMz": { + "type": "number", + "description": "Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.", + "format": "double", + "nullable": true + }, + "formulaSearchDBs": { + "type": "array", + "description": "List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "applyFormulaConstraintsToDBAndBottomUpSearch": { + "type": "boolean", + "description": "By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.", + "nullable": true + }, + "enforcedFormulaConstraints": { + "type": "string", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered", + "nullable": true + }, + "fallbackFormulaConstraints": { + "type": "string", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)", + "nullable": true + }, + "detectableElements": { + "type": "array", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "ilpTimeout": { + "$ref": "#/components/schemas/Timeout" + }, + "useHeuristic": { + "$ref": "#/components/schemas/UseHeuristic" + }, + "injectSpecLibMatchFormulas": { + "type": "boolean", + "description": "If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied", + "nullable": true + }, + "minScoreToInjectSpecLibMatch": { + "type": "number", + "description": "Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.", + "format": "double", + "nullable": true + }, + "minPeaksToInjectSpecLibMatch": { + "type": "integer", + "description": "Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.", + "format": "int32", + "nullable": true + } + }, + "description": "User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.", + "nullable": true + }, + "SpectralLibrarySearch": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "spectraSearchDBs": { + "type": "array", + "description": "Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "precursorDeviationPpm": { + "type": "number", + "description": "Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.", + "format": "double", + "nullable": true + }, + "minSimilarity": { + "type": "number", + "description": "Minimal spectral similarity of a spectral match to be considered a hit.", + "format": "float", + "nullable": true + }, + "minNumOfPeaks": { + "type": "integer", + "description": "Minimal number of matching peaks of a spectral match to be considered a hit.", + "format": "int32", + "nullable": true + }, + "enableAnalogueSearch": { + "type": "boolean", + "description": "Enable analogue search in addition to the identity spectral library search" + }, + "minSimilarityAnalogue": { + "type": "number", + "description": "Minimal spectral similarity of a spectral match to be considered an analogue hit.", + "format": "float", + "nullable": true + }, + "minNumOfPeaksAnalogue": { + "type": "integer", + "description": "Minimal number of matching peaks of a spectral match to be considered an analogue hit.", + "format": "int32", + "nullable": true + }, + "scoring": { + "$ref": "#/components/schemas/SpectralMatchingType" + }, + "peakDeviationPpm": { + "type": "number", + "description": "NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.", + "format": "double", + "nullable": true, + "deprecated": true + } + }, + "description": "User/developer friendly parameter subset for the Spectral library search tool.", + "nullable": true + }, + "SpectralMatchingType": { + "type": "string", + "nullable": true, + "enum": [ + "INTENSITY", + "GAUSSIAN", + "MODIFIED_COSINE", + "FAST_COSINE" + ] + }, + "StructureDbSearch": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "structureSearchDBs": { + "type": "array", + "description": "Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "tagStructuresWithLipidClass": { + "type": "boolean", + "description": "Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.", + "nullable": true + }, + "expansiveSearchConfidenceMode": { + "$ref": "#/components/schemas/ConfidenceMode" + } + }, + "description": "User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.", + "nullable": true + }, + "Timeout": { + "type": "object", + "properties": { + "numberOfSecondsPerDecomposition": { + "type": "integer", + "format": "int32" + }, + "numberOfSecondsPerInstance": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "UseHeuristic": { + "type": "object", + "properties": { + "useHeuristicAboveMz": { + "type": "integer", + "format": "int32" + }, + "useOnlyHeuristicAboveMz": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "Zodiac": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "consideredCandidatesAt300Mz": { + "type": "integer", + "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.", + "format": "int32", + "nullable": true + }, + "consideredCandidatesAt800Mz": { + "type": "integer", + "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.", + "format": "int32", + "nullable": true + }, + "runInTwoSteps": { + "type": "boolean", + "description": "As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.", + "nullable": true + }, + "edgeFilterThresholds": { + "$ref": "#/components/schemas/ZodiacEdgeFilterThresholds" + }, + "gibbsSamplerParameters": { + "$ref": "#/components/schemas/ZodiacEpochs" + }, + "librarySearchAnchors": { + "$ref": "#/components/schemas/ZodiacLibraryScoring" + }, + "analogueSearchAnchors": { + "$ref": "#/components/schemas/ZodiacAnalogueNodes" + } + }, + "description": "User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool", + "nullable": true + }, + "ZodiacAnalogueNodes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "minSimilarity": { + "type": "number", + "format": "double" + }, + "minSharedPeaks": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacEdgeFilterThresholds": { + "type": "object", + "properties": { + "thresholdFilter": { + "type": "number", + "format": "double" + }, + "minLocalCandidates": { + "type": "integer", + "format": "int32" + }, + "minLocalConnections": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacEpochs": { + "type": "object", + "properties": { + "iterations": { + "type": "integer", + "format": "int32" + }, + "burnInPeriod": { + "type": "integer", + "format": "int32" + }, + "numberOfMarkovChains": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacLibraryScoring": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "minSimilarity": { + "type": "number", + "format": "double" + } + }, + "nullable": true + }, + "ImportResult": { + "required": [ + "affectedAlignedFeatureIds", + "affectedCompoundIds" + ], + "type": "object", + "properties": { + "affectedCompoundIds": { + "type": "array", + "description": "List of compoundIds that have been imported.", + "items": { + "type": "string" + } + }, + "affectedAlignedFeatureIds": { + "type": "array", + "description": "List of alignedFeatureIds that have been imported..", + "items": { + "type": "string" + } + } + } + }, + "Deviation": { + "type": "object", + "properties": { + "ppm": { + "type": "number", + "format": "double" + }, + "absolute": { + "type": "number", + "format": "double" + } + }, + "nullable": true + }, + "LcmsSubmissionParameters": { + "type": "object", + "properties": { + "alignLCMSRuns": { + "type": "boolean", + "description": "Specifies whether LC/MS runs should be aligned", + "default": true + }, + "noiseIntensity": { + "type": "number", + "description": "Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.", + "format": "double", + "default": -1 + }, + "traceMaxMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "alignMaxMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "alignMaxRetentionTimeDeviation": { + "type": "number", + "description": "Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.", + "format": "double", + "default": -1 + }, + "minSNR": { + "type": "number", + "description": "Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory", + "format": "double", + "default": 3 + } + } + }, + "TagGroup": { + "type": "object", + "properties": { + "groupName": { + "type": "string", + "description": "Name of this Grouping query." + }, + "luceneQuery": { + "type": "string", + "description": "Query used to group the entities in lucene format." + }, + "groupType": { + "type": "string" + } + } + }, + "CompoundImport": { + "required": [ + "features" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Some (optional) human-readable name", + "nullable": true + }, + "features": { + "type": "array", + "description": "The features this compound consists of.", + "items": { + "$ref": "#/components/schemas/FeatureImport" + } + } + } + }, + "DataQuality": { + "type": "string", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "FeatureImport": { + "required": [ + "charge", + "ionMass" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "nullable": true + }, + "externalFeatureId": { + "type": "string", + "description": "Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.", + "nullable": true + }, + "ionMass": { + "type": "number", + "format": "double" + }, + "charge": { + "type": "integer", + "format": "int32" + }, + "detectedAdducts": { + "uniqueItems": true, + "type": "array", + "description": "Detected adducts of this feature. Can be NULL or empty if no adducts are known.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "rtStartSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtApexSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "dataQuality": { + "$ref": "#/components/schemas/DataQuality" + }, + "mergedMs1": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "ms1Spectra": { + "type": "array", + "description": "List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.", + "nullable": true, + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "ms2Spectra": { + "type": "array", + "description": "List of MS/MS spectra that belong to this feature.", + "nullable": true, + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + } + }, + "description": "Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail." + }, + "CompoundOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "AlignedFeatureOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "AlignedFeature": { + "required": [ + "charge", + "detectedAdducts" + ], + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string" + }, + "compoundId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "externalFeatureId": { + "type": "string", + "description": "Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source." + }, + "ionMass": { + "type": "number", + "format": "double" + }, + "charge": { + "type": "integer", + "description": "Ion mode (charge) this feature has been measured in.", + "format": "int32" + }, + "detectedAdducts": { + "uniqueItems": true, + "type": "array", + "description": "Adducts of this feature that have been detected during preprocessing.", + "items": { + "type": "string" + } + }, + "rtStartSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtApexSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "quality": { + "$ref": "#/components/schemas/DataQuality" + }, + "hasMs1": { + "type": "boolean", + "description": "If true, the feature has at lease one MS1 spectrum" + }, + "hasMsMs": { + "type": "boolean", + "description": "If true, the feature has at lease one MS/MS spectrum" + }, + "msData": { + "$ref": "#/components/schemas/MsData" + }, + "topAnnotations": { + "$ref": "#/components/schemas/FeatureAnnotations" + }, + "topAnnotationsDeNovo": { + "$ref": "#/components/schemas/FeatureAnnotations" + }, + "computing": { + "type": "boolean", + "description": "Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results" + }, + "computedTools": { + "$ref": "#/components/schemas/ComputedSubtools" + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + }, + "description": "The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view." + }, + "AnnotatedPeak": { + "type": "object", + "properties": { + "mz": { + "type": "number", + "format": "double" + }, + "intensity": { + "type": "number", + "format": "double" + }, + "peakAnnotation": { + "$ref": "#/components/schemas/PeakAnnotation" + } + } + }, + "AnnotatedSpectrum": { + "required": [ + "cosineQuery", + "peaks" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Optional Displayable name of this spectrum.", + "nullable": true + }, + "msLevel": { + "type": "integer", + "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", + "format": "int32", + "nullable": true + }, + "collisionEnergy": { + "type": "string", + "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", + "nullable": true + }, + "instrument": { + "type": "string", + "description": "Instrument information.", + "nullable": true + }, + "precursorMz": { + "type": "number", + "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", + "format": "double", + "nullable": true + }, + "scanNumber": { + "type": "integer", + "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", + "format": "int32", + "nullable": true + }, + "cosineQuery": { + "type": "boolean", + "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", + "default": false + }, + "precursorPeak": { + "$ref": "#/components/schemas/SimplePeak" + }, + "peaks": { + "type": "array", + "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", + "items": { + "$ref": "#/components/schemas/AnnotatedPeak" + } + }, + "absIntensityFactor": { + "type": "number", + "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", + "format": "double", + "nullable": true, + "deprecated": true + }, + "maxNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to MAX norm.", + "format": "double", + "nullable": true + }, + "sumNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to SUM norm.", + "format": "double", + "nullable": true + }, + "l2NormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", + "format": "double", + "nullable": true + }, + "firstPeakNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", + "format": "double", + "nullable": true + }, + "spectrumAnnotation": { + "$ref": "#/components/schemas/SpectrumAnnotation" + } + }, + "description": "Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes", + "nullable": true + }, + "CanopusPrediction": { + "type": "object", + "properties": { + "classyFireClasses": { + "type": "array", + "description": "All predicted ClassyFire classes", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + }, + "npcClasses": { + "type": "array", + "description": "All predicted NPC classes", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + } + }, + "description": "Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.", + "nullable": true + }, + "Compound": { + "type": "object", + "properties": { + "compoundId": { + "type": "string", + "description": "uid of this compound Entity" + }, + "name": { + "type": "string", + "description": "Some (optional) human-readable name", + "nullable": true + }, + "rtStartSeconds": { + "type": "number", + "description": "The merged/consensus retention time start (earliest rt) of this compound", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "description": "The merged/consensus retention time end (latest rt) of this compound", + "format": "double", + "nullable": true + }, + "neutralMass": { + "type": "number", + "description": "Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass", + "format": "double", + "nullable": true + }, + "features": { + "type": "array", + "description": "List of aligned features (adducts) that belong to the same (this) compound", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + }, + "consensusAnnotations": { + "$ref": "#/components/schemas/ConsensusAnnotationsCSI" + }, + "consensusAnnotationsDeNovo": { + "$ref": "#/components/schemas/ConsensusAnnotationsDeNovo" + }, + "customAnnotations": { + "$ref": "#/components/schemas/ConsensusAnnotationsCSI" + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + } + }, + "CompoundClass": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/CompoundClassType" + }, + "level": { + "type": "string", + "description": "Name of the level this compound class belongs to", + "nullable": true + }, + "levelIndex": { + "type": "integer", + "description": "Index of the level this compound class belongs to", + "format": "int32", + "nullable": true + }, + "name": { + "type": "string", + "description": "Name of the compound class.", + "nullable": true + }, + "description": { + "type": "string", + "description": "Description of the compound class.", + "nullable": true + }, + "id": { + "type": "integer", + "description": "Unique id of the class. Might be undefined for certain classification ontologies.", + "format": "int32", + "nullable": true + }, + "probability": { + "type": "number", + "description": "prediction probability", + "format": "double" + }, + "index": { + "type": "integer", + "description": "Absolute index of this property in the predicted vector/embedding", + "format": "int32" + }, + "parentId": { + "type": "integer", + "description": "Unique id of the parent class. Might be undefined for certain classification ontologies.", + "format": "int32", + "nullable": true + }, + "parentName": { + "type": "string", + "description": "Name of the parent compound class.", + "nullable": true + } + }, + "description": "Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to", + "nullable": true + }, + "CompoundClassType": { + "type": "string", + "description": "Defines compound class ontologies that are available.", + "nullable": true, + "enum": [ + "ClassyFire", + "NPC" + ] + }, + "CompoundClasses": { + "type": "object", + "properties": { + "npcPathway": { + "$ref": "#/components/schemas/CompoundClass" + }, + "npcSuperclass": { + "$ref": "#/components/schemas/CompoundClass" + }, + "npcClass": { + "$ref": "#/components/schemas/CompoundClass" + }, + "classyFireLineage": { + "type": "array", + "description": "Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + }, + "classyFireAlternatives": { + "type": "array", + "description": "Alternative ClassyFire classes with high probability that do not fit into the linage", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + } + }, + "description": "Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.", + "nullable": true + }, + "ComputedSubtools": { + "type": "object", + "properties": { + "librarySearch": { + "type": "boolean" + }, + "formulaSearch": { + "type": "boolean" + }, + "zodiac": { + "type": "boolean" + }, + "fingerprint": { + "type": "boolean" + }, + "canopus": { + "type": "boolean" + }, + "structureSearch": { + "type": "boolean" + }, + "deNovoSearch": { + "type": "boolean" + } + }, + "description": "Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.", + "nullable": true + }, + "ConsensusAnnotationsCSI": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", + "nullable": true + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "supportingFeatureIds": { + "type": "array", + "description": "FeatureIds where the topAnnotation supports this annotation.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "selectionCriterion": { + "$ref": "#/components/schemas/ConsensusCriterionCSI" + }, + "csiFingerIdStructure": { + "$ref": "#/components/schemas/StructureCandidate" + }, + "confidenceExactMatch": { + "type": "number", + "description": "Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported", + "format": "double", + "nullable": true + }, + "confidenceApproxMatch": { + "type": "number", + "description": "Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "ConsensusAnnotationsDeNovo": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", + "nullable": true + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "supportingFeatureIds": { + "type": "array", + "description": "FeatureIds where the topAnnotation supports this annotation.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "selectionCriterion": { + "$ref": "#/components/schemas/ConsensusCriterionDeNovo" + } + }, + "nullable": true + }, + "ConsensusCriterionCSI": { + "type": "string", + "nullable": true, + "enum": [ + "MAJORITY_STRUCTURE", + "CONFIDENCE_STRUCTURE", + "SINGLETON_STRUCTURE", + "MAJORITY_FORMULA", + "TOP_FORMULA", + "SINGLETON_FORMULA" + ] + }, + "ConsensusCriterionDeNovo": { + "type": "string", + "nullable": true, + "enum": [ + "MAJORITY_FORMULA", + "TOP_FORMULA", + "SINGLETON_FORMULA" + ] + }, + "FeatureAnnotations": { + "type": "object", + "properties": { + "formulaAnnotation": { + "$ref": "#/components/schemas/FormulaCandidate" + }, + "structureAnnotation": { + "$ref": "#/components/schemas/StructureCandidateScored" + }, + "compoundClassAnnotation": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "confidenceExactMatch": { + "type": "number", + "description": "Confidence Score that represents the confidence whether the top hit is correct.", + "format": "double", + "nullable": true + }, + "confidenceApproxMatch": { + "type": "number", + "description": "Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.", + "format": "double", + "nullable": true + }, + "expansiveSearchState": { + "$ref": "#/components/schemas/ConfidenceMode" + }, + "specifiedDatabases": { + "type": "array", + "description": "List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "expandedDatabases": { + "type": "array", + "description": "List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + } + }, + "description": "Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.", + "nullable": true + }, + "FormulaCandidate": { + "type": "object", + "properties": { + "formulaId": { + "type": "string", + "description": "Unique identifier of this formula candidate" + }, + "molecularFormula": { + "type": "string", + "description": "molecular formula of this formula candidate" + }, + "adduct": { + "type": "string", + "description": "Adduct of this formula candidate" + }, + "rank": { + "type": "integer", + "format": "int32" + }, + "siriusScoreNormalized": { + "type": "number", + "description": "Normalized Sirius Score of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "siriusScore": { + "type": "number", + "description": "Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "isotopeScore": { + "type": "number", + "format": "double", + "nullable": true + }, + "treeScore": { + "type": "number", + "format": "double", + "nullable": true + }, + "zodiacScore": { + "type": "number", + "description": "Zodiac Score of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "numOfExplainedPeaks": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "numOfExplainablePeaks": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "totalExplainedIntensity": { + "type": "number", + "format": "double", + "nullable": true + }, + "medianMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "fragmentationTree": { + "$ref": "#/components/schemas/FragmentationTree" + }, + "annotatedSpectrum": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + }, + "isotopePatternAnnotation": { + "$ref": "#/components/schemas/IsotopePatternAnnotation" + }, + "lipidAnnotation": { + "$ref": "#/components/schemas/LipidAnnotation" + }, + "predictedFingerprint": { + "type": "array", + "description": "Probabilistic molecular fingerprint predicted by CSI:FingerID", + "nullable": true, + "items": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "canopusPrediction": { + "$ref": "#/components/schemas/CanopusPrediction" + } + }, + "description": "Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.", + "nullable": true + }, + "FragmentNode": { + "type": "object", + "properties": { + "fragmentId": { + "type": "integer", + "format": "int32" + }, + "molecularFormula": { + "type": "string", + "description": "neutral molecular formula of the fragment without adduct", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.", + "nullable": true + }, + "massDeviationDa": { + "type": "number", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "format": "double", + "nullable": true + }, + "score": { + "type": "number", + "format": "double", + "nullable": true + }, + "intensity": { + "type": "number", + "format": "double", + "nullable": true + }, + "mz": { + "type": "number", + "format": "double", + "nullable": true + } + } + }, + "FragmentationTree": { + "type": "object", + "properties": { + "fragments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FragmentNode" + } + }, + "losses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LossEdge" + } + }, + "treeScore": { + "type": "number", + "format": "double" + }, + "molecularFormula": { + "type": "string" + }, + "adduct": { + "type": "string" + } + }, + "description": "Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation", + "nullable": true + }, + "IsotopePatternAnnotation": { + "type": "object", + "properties": { + "isotopePattern": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "simulatedPattern": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "nullable": true + }, + "LipidAnnotation": { + "type": "object", + "properties": { + "lipidSpecies": { + "type": "string", + "description": "Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.", + "nullable": true + }, + "lipidMapsId": { + "type": "string", + "description": "LIPID MAPS id of the predicted lipid class.", + "nullable": true + }, + "lipidClassName": { + "type": "string", + "description": "Human-readable name of the predicted lipid class.", + "nullable": true + }, + "hypotheticalStructure": { + "type": "string", + "description": "Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.", + "nullable": true + }, + "chainsUnknown": { + "type": "boolean", + "description": "True of the formula composition of the chains could not be determined from the MS/MS.", + "nullable": true + } + }, + "nullable": true + }, + "LossEdge": { + "type": "object", + "properties": { + "sourceFragmentIdx": { + "type": "integer", + "format": "int32" + }, + "targetFragmentIdx": { + "type": "integer", + "format": "int32" + }, + "molecularFormula": { + "type": "string" + }, + "score": { + "type": "number", + "format": "double" + } + } + }, + "MsData": { + "type": "object", + "properties": { + "isotopePattern": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "mergedMs1": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "mergedMs2": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "ms1Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "ms2Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + } + }, + "description": "The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar", + "nullable": true + }, + "ParentPeak": { + "required": [ + "lossFormula", + "parentFragmentId", + "parentIdx" + ], + "type": "object", + "properties": { + "parentIdx": { + "type": "integer", + "description": "Index to the parent peak connected by this loss in this particular spectrum", + "format": "int32" + }, + "parentFragmentId": { + "type": "integer", + "description": "Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", + "format": "int32" + }, + "lossFormula": { + "type": "string", + "description": "Molecular formula of the neutral loss that connects these two peaks." + } + }, + "description": "Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.", + "nullable": true + }, + "PeakAnnotation": { + "required": [ + "fragmentId" + ], + "type": "object", + "properties": { + "fragmentId": { + "type": "integer", + "description": "Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", + "format": "int32" + }, + "molecularFormula": { + "type": "string", + "description": "Molecular formula that has been annotated to this peak", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "Adduct that has been annotated to this peak", + "nullable": true + }, + "exactMass": { + "type": "number", + "description": "Exact mass of the annotated molecular formula and adduct", + "format": "double", + "nullable": true + }, + "massDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the measured peak mass in mDa", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the measured peak mass in ppm", + "format": "double", + "nullable": true + }, + "recalibratedMassDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa", + "format": "double", + "nullable": true + }, + "recalibratedMassDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the recalibrated peak mass in ppm", + "format": "double", + "nullable": true + }, + "parentPeak": { + "$ref": "#/components/schemas/ParentPeak" + }, + "substructureAtoms": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureBonds": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureBondsCut": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureScore": { + "type": "number", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.", + "format": "float", + "nullable": true + }, + "hydrogenRearrangements": { + "type": "integer", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.", + "format": "int32", + "nullable": true + } + }, + "nullable": true + }, + "SpectrumAnnotation": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula that has been annotated to this spectrum", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "Adduct that has been annotated to this spectrum", + "nullable": true + }, + "exactMass": { + "type": "number", + "description": "Exact mass based on the annotated molecular formula and ionization", + "format": "double", + "nullable": true + }, + "massDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm", + "format": "double", + "nullable": true + }, + "structureAnnotationSmiles": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationName": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationSvg": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationScore": { + "type": "number", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "StructureCandidate": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "StructureCandidateScored": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + }, + "rank": { + "type": "integer", + "description": "the overall rank of this candidate among all candidates of this feature", + "format": "int32" + }, + "csiScore": { + "type": "number", + "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", + "format": "double" + }, + "tanimotoSimilarity": { + "type": "number", + "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", + "format": "double", + "nullable": true + }, + "mcesDistToTopHit": { + "type": "number", + "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", + "format": "double", + "nullable": true + }, + "fingerprint": { + "$ref": "#/components/schemas/BinaryFingerprint" + } + }, + "nullable": true + }, + "StoredJobSubmission": { + "required": [ + "editable", + "jobSubmission", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Unique name to identify this JobSubmission (job config)." + }, + "editable": { + "type": "boolean", + "description": "False for predefined configs which are not editable and not removable." + }, + "jobSubmission": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "BioTransformerParameters": { + "required": [ + "bioTransformerSequenceSteps", + "cyp450Mode", + "p2Mode" + ], + "type": "object", + "properties": { + "cyp450Mode": { + "$ref": "#/components/schemas/Cyp450Mode" + }, + "p2Mode": { + "$ref": "#/components/schemas/P2Mode" + }, + "useDB": { + "type": "boolean", + "description": "\"Specify if you want to enable the retrieving from database (HMDB) feature.\"", + "default": true + }, + "bioTransformerSequenceSteps": { + "type": "array", + "description": "Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).", + "items": { + "$ref": "#/components/schemas/BioTransformerSequenceStep" + } + } + } + }, + "BioTransformerSequenceStep": { + "type": "object", + "properties": { + "metabolicTransformation": { + "$ref": "#/components/schemas/MetabolicTransformation" + }, + "iterations": { + "type": "integer", + "format": "int32" + } + } + }, + "Cyp450Mode": { + "type": "string", + "nullable": true, + "default": "COMBINED", + "enum": [ + "RULE_BASED", + "CY_PRODUCT", + "COMBINED" + ] + }, + "MetabolicTransformation": { + "type": "string", + "enum": [ + "PHASE_1_CYP450", + "EC_BASED", + "PHASE_2", + "HUMAN_GUT", + "ALL_HUMAN", + "ABIOTIC", + "HUMAN_CUSTOM_MULTI" + ] + }, + "P2Mode": { + "type": "string", + "nullable": true, + "default": "BT_RULE_BASED", + "enum": [ + "BT_RULE_BASED", + "P2_RULE_ONLY", + "COMBINED_RULES" + ] + }, + "AccountCredentials": { + "type": "object", + "properties": { + "username": { + "type": "string", + "nullable": true + }, + "password": { + "type": "string", + "nullable": true + }, + "refreshToken": { + "type": "string", + "nullable": true + } + }, + "description": "Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service." + }, + "RunOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "tags" + ] + }, + "Run": { + "type": "object", + "properties": { + "runId": { + "type": "string", + "description": "Identifier" + }, + "name": { + "type": "string", + "description": "Informative, human-readable name of this run" + }, + "source": { + "type": "string", + "description": "Source location" + }, + "chromatography": { + "type": "string", + "nullable": true + }, + "ionization": { + "type": "string", + "nullable": true + }, + "fragmentation": { + "type": "string", + "nullable": true + }, + "massAnalyzers": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + } + }, + "PageMetadata": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer", + "format": "int64" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "totalPages": { + "type": "integer", + "format": "int64" + } + } + }, + "PagedModelRun": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Run" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelJob": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "AdductEdgeExperimental": { + "type": "object", + "properties": { + "mzDelta": { + "type": "number", + "format": "double" + }, + "annotation": { + "type": "string" + }, + "from": { + "type": "integer", + "format": "int32" + }, + "to": { + "type": "integer", + "format": "int32" + }, + "mergedCorrelation": { + "type": "number", + "format": "float" + }, + "representativeCorrelation": { + "type": "number", + "format": "float" + }, + "ms2cosine": { + "type": "number", + "format": "float" + }, + "pvalue": { + "type": "number", + "format": "float" + }, + "intensityRatioScore": { + "type": "number", + "format": "float" + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "AdductNetworkExperimental": { + "type": "object", + "properties": { + "nodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AdductNodeExperimental" + } + }, + "edges": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AdductEdgeExperimental" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "AdductNodeExperimental": { + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string" + }, + "mz": { + "type": "number", + "format": "double" + }, + "adductAnnotations": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "Axes": { + "type": "object", + "properties": { + "scanNumber": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "scanIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "retentionTimeInSeconds": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "TraceAnnotationExperimental": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/TraceAnnotationTypeExperimental" + }, + "description": { + "type": "string", + "nullable": true + }, + "index": { + "type": "integer", + "format": "int32" + }, + "from": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "to": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "TraceAnnotationTypeExperimental": { + "type": "string", + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.", + "enum": [ + "FEATURE", + "MS2" + ] + }, + "TraceExperimental": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "sampleId": { + "type": "string", + "nullable": true + }, + "sampleName": { + "type": "string", + "nullable": true + }, + "label": { + "type": "string" + }, + "color": { + "type": "string" + }, + "intensities": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "annotations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TraceAnnotationExperimental" + } + }, + "mz": { + "type": "number", + "format": "double" + }, + "merged": { + "type": "boolean" + }, + "normalizationFactor": { + "type": "number", + "description": "Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.", + "format": "double" + }, + "noiseLevel": { + "type": "number", + "description": "The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.", + "format": "double" + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "TraceSetExperimental": { + "type": "object", + "properties": { + "adductNetwork": { + "$ref": "#/components/schemas/AdductNetworkExperimental" + }, + "sampleId": { + "type": "string" + }, + "sampleName": { + "type": "string" + }, + "axes": { + "$ref": "#/components/schemas/Axes" + }, + "traces": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TraceExperimental" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "QuantRowType": { + "type": "string", + "enum": [ + "FEATURES", + "COMPOUNDS" + ] + }, + "QuantTableExperimental": { + "type": "object", + "properties": { + "quantificationMeasure": { + "$ref": "#/components/schemas/QuantMeasure" + }, + "rowType": { + "$ref": "#/components/schemas/QuantRowType" + }, + "rowIds": { + "type": "array", + "nullable": true, + "items": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "columnIds": { + "type": "array", + "nullable": true, + "items": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "rowNames": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "columnNames": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "values": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "PagedModelCompound": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "FoldChange": { + "required": [ + "foldChange", + "objectId", + "quantType" + ], + "type": "object", + "properties": { + "leftGroup": { + "type": "string" + }, + "rightGroup": { + "type": "string" + }, + "aggregation": { + "$ref": "#/components/schemas/AggregationType" + }, + "quantification": { + "$ref": "#/components/schemas/QuantMeasure" + }, + "quantType": { + "$ref": "#/components/schemas/QuantRowType" + }, + "objectId": { + "type": "string" + }, + "foldChange": { + "type": "number", + "format": "double" + } + } + }, + "StatisticsTable": { + "type": "object", + "properties": { + "statisticsType": { + "$ref": "#/components/schemas/StatisticsType" + }, + "aggregationType": { + "$ref": "#/components/schemas/AggregationType" + }, + "quantificationMeasure": { + "$ref": "#/components/schemas/QuantMeasure" + }, + "rowType": { + "$ref": "#/components/schemas/QuantRowType" + }, + "rowIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnLeftGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnRightGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "values": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + } + }, + "StatisticsType": { + "type": "string", + "enum": [ + "FOLD_CHANGE" + ] + }, + "SpectralLibraryMatchOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "referenceSpectrum" + ] + }, + "SpectralLibraryMatchSummary": { + "required": [ + "databaseCompoundCount", + "referenceSpectraCount", + "spectralMatchCount" + ], + "type": "object", + "properties": { + "bestMatch": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + }, + "spectralMatchCount": { + "type": "integer", + "format": "int64" + }, + "referenceSpectraCount": { + "type": "integer", + "format": "int32" + }, + "databaseCompoundCount": { + "type": "integer", + "format": "int32" + } + } + }, + "PagedModelSpectralLibraryMatch": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "AlignedFeatureQualityExperimental": { + "required": [ + "alignedFeatureId", + "categories", + "overallQuality" + ], + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string", + "description": "Id of the feature (aligned over runs) this quality information belongs to." + }, + "overallQuality": { + "$ref": "#/components/schemas/DataQuality" + }, + "categories": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Category" + }, + "description": "Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.," + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "Category": { + "type": "object", + "properties": { + "categoryName": { + "type": "string" + }, + "overallQuality": { + "$ref": "#/components/schemas/DataQuality" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/QualityItem" + } + } + } + }, + "QualityItem": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "quality": { + "$ref": "#/components/schemas/DataQuality" + }, + "weight": { + "$ref": "#/components/schemas/QualityWeight" + } + } + }, + "QualityWeight": { + "type": "string", + "enum": [ + "MINOR", + "MAJOR", + "CRITICAL" + ] + }, + "FormulaCandidateOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "statistics", + "fragmentationTree", + "annotatedSpectrum", + "isotopePattern", + "lipidAnnotation", + "predictedFingerprint", + "compoundClasses", + "canopusPredictions" + ] + }, + "AnnotatedMsMsData": { + "required": [ + "mergedMs2", + "ms2Spectra" + ], + "type": "object", + "properties": { + "mergedMs2": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + }, + "ms2Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + }, + "StructureCandidateOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "PagedModelStructureCandidateScored": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelFormulaCandidate": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidate" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelStructureCandidateFormula": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelAlignedFeature": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "Info": { + "required": [ + "availableILPSolvers", + "supportedILPSolvers" + ], + "type": "object", + "properties": { + "nightSkyApiVersion": { + "type": "string", + "description": "API version of the SIRIUS Nightsky API", + "nullable": true + }, + "siriusVersion": { + "type": "string", + "description": "Version of the SIRIUS application", + "nullable": true + }, + "latestSiriusVersion": { + "type": "string", + "description": "Latest available Version of the SIRIUS application", + "nullable": true + }, + "latestSiriusLink": { + "type": "string", + "description": "Link to the latest available Version of the SIRIUS application", + "nullable": true + }, + "updateAvailable": { + "type": "boolean", + "description": "true if newer SIRIUS version is available" + }, + "siriusLibVersion": { + "type": "string", + "description": "Version of the SIRIUS libraries", + "nullable": true + }, + "fingerIdLibVersion": { + "type": "string", + "description": "Version of the CSI:FingerID libraries", + "nullable": true + }, + "chemDbVersion": { + "type": "string", + "description": "Version of the Chemical Database available via SIRIUS web services", + "nullable": true + }, + "fingerIdModelVersion": { + "type": "string", + "description": "Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.", + "nullable": true + }, + "fingerprintId": { + "type": "string", + "description": "Version of the Molecular Fingerprint used by SIRIUS", + "nullable": true + }, + "availableILPSolvers": { + "type": "array", + "description": "Set of solvers that are configured correctly and can be loaded", + "items": { + "$ref": "#/components/schemas/Solver" + } + }, + "supportedILPSolvers": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Set of ILP Solvers that are Supported and their version information" + } + } + }, + "Solver": { + "type": "string", + "enum": [ + "GUROBI", + "CPLEX", + "GLPK", + "CLP" + ] + }, + "GuiInfo": { + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "The project this instance is running on" + } + } + }, + "ConnectionCheck": { + "required": [ + "errors", + "licenseInfo" + ], + "type": "object", + "properties": { + "licenseInfo": { + "$ref": "#/components/schemas/LicenseInfo" + }, + "errors": { + "type": "array", + "description": "List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors", + "items": { + "$ref": "#/components/schemas/ConnectionError" + } + } + } + }, + "ConnectionError": { + "required": [ + "errorKlass", + "errorType", + "siriusErrorCode", + "siriusMessage" + ], + "type": "object", + "properties": { + "errorType": { + "$ref": "#/components/schemas/ConnectionErrorType" + }, + "errorKlass": { + "$ref": "#/components/schemas/ConnectionErrorClass" + }, + "siriusErrorCode": { + "type": "integer", + "format": "int32" + }, + "siriusMessage": { + "type": "string" + }, + "serverResponseErrorCode": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "serverResponseErrorMessage": { + "type": "string", + "nullable": true + }, + "error": { + "type": "boolean" + }, + "warning": { + "type": "boolean" + } + } + }, + "ConnectionErrorClass": { + "type": "string", + "enum": [ + "UNKNOWN", + "INTERNET", + "LOGIN_SERVER", + "LICENSE_SERVER", + "TOKEN", + "LOGIN", + "LICENSE", + "TERMS", + "APP_SERVER" + ] + }, + "ConnectionErrorType": { + "type": "string", + "enum": [ + "WARNING", + "ERROR" + ] + }, + "LicenseInfo": { + "type": "object", + "properties": { + "userEmail": { + "type": "string", + "description": "Email address of the user account this license information belongs to.", + "nullable": true + }, + "userId": { + "type": "string", + "description": "User ID (uid) of the user account this license information belongs to.", + "nullable": true + }, + "subscription": { + "$ref": "#/components/schemas/Subscription" + }, + "consumables": { + "$ref": "#/components/schemas/SubscriptionConsumables" + }, + "terms": { + "type": "array", + "nullable": true, + "items": { + "$ref": "#/components/schemas/Term" + } + } + } + }, + "SubscriptionConsumables": { + "type": "object", + "properties": { + "pendingJobs": { + "type": "integer", + "format": "int32" + }, + "countedCompounds": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "Term": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "link": { + "type": "string", + "format": "uri" + } + }, + "nullable": true + }, + "ApiVersion": { + "type": "string", + "enum": [ + "V2", + "V3" + ] + }, + "WebServerNamespace": { + "type": "object", + "properties": { + "value": { + "type": "string" + } + } + }, + "SecurityContext": { + "type": "object", + "properties": { + "principal": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + } + } + } + } + } + } +} diff --git a/.updater/api/api-docs-strings.json b/.updater/api/api-docs-strings.json index 17fe88fe..6ee25d2e 100644 --- a/.updater/api/api-docs-strings.json +++ b/.updater/api/api-docs-strings.json @@ -1 +1,11677 @@ -{"openapi":"3.0.1","info":{"title":"SIRIUS Nightsky API","description":"REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6","version":"3.1"},"servers":[{"url":"http://localhost:8080","description":"Generated server url"}],"tags":[{"name":"Info","description":"Status und Information"},{"name":"Feature Statistics","description":"[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Jobs","description":"Start, monitor and cancel background jobs."},{"name":"Compounds","description":"This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)"},{"name":"Gui","description":"GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects."},{"name":"Projects","description":"Manage SIRIUS projects."},{"name":"Runs","description":"[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Compound Statistics","description":"[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Tags","description":"[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates."},{"name":"Login and Account","description":"Perform signIn, signOut and signUp. Get tokens and account information."},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}},{"name":"Searchable Databases","description":"Manage structure and spectral databases that can be used by various computational methods."},{"name":"Features","description":"This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries."}],"paths":{"/api/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Get project space info by its projectId.","description":"Get project space info by its projectId.","operationId":"getProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier tof the project-space to be accessed.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"put":{"tags":["Projects"],"summary":"Open an existing project-space and make it accessible via the given projectId.","description":"Open an existing project-space and make it accessible via the given projectId.","operationId":"openProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"post":{"tags":["Projects"],"summary":"Create and open a new project-space at given location and make it accessible via the given projectId.","description":"Create and open a new project-space at given location and make it accessible via the given projectId.","operationId":"createProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].","required":true,"schema":{"type":"string"}},{"name":"pathToProject","in":"query","description":"local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.","required":false,"deprecated":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","compatibilityInfo","sizeInformation"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectInfo"}}}}}},"delete":{"tags":["Projects"],"summary":"Close project-space and remove it from the application","description":"Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.","operationId":"closeProject","parameters":[{"name":"projectId","in":"path","description":"unique name/identifier of the project-space to be closed.","required":true,"schema":{"type":"string"}},{"name":"compact","in":"query","description":"if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.","required":false,"deprecated":true,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag definitions in the given project-space","description":"[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTags","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagType","in":"query","description":"scope of the tag (optional)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definitions.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"put":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add tags to the project","description":"[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"createTags","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the tag definitions to be created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinitionImport"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been created","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagDefinition"}}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}":{"put":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Add tags to a run in the project","description":"[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/blanksubtract/compute":{"put":{"tags":["Runs"],"summary":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter","description":"**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

","operationId":"computeFoldChangeForBlankSubtraction","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"description":"request with lists of run IDs that are sample, blank, and control runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SampleTypeFoldChangeRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}":{"put":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Tags with the same name will be overwritten","description":"[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchange/compute":{"put":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}},"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.","description":"[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.","operationId":"addDeNovoStructureCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"smiles","in":"query","description":"smiles","required":false,"schema":{"type":"string","default":"none"}}],"responses":{"200":{"description":"StructureCandidate of this feature candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}":{"put":{"tags":["Features"],"summary":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project","description":"[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addTagsToAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"run to add tags to.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"required":true},"responses":{"200":{"description":"the tags that have been added","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchange/compute":{"put":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Compute the fold change between two groups of runs","description":"[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"computeAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to compute the fold change in.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left tag group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right tag group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}},{"name":"optFields","in":"query","description":"job opt fields.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/aligned-features/delete":{"put":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK"}}}},"/api/databases/{databaseId}":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"put":{"tags":["Searchable Databases"],"operationId":"updateDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"post":{"tags":["Searchable Databases"],"operationId":"createDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"pattern":"^[a-zA-Z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabaseParameters"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"delete":{"tags":["Searchable Databases"],"operationId":"removeDatabase","parameters":[{"name":"databaseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"delete","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK"}}}},"/api/account/subscriptions/select-active":{"put":{"tags":["Login and Account"],"summary":"Select a subscription as active subscription to be used for computations.","description":"Select a subscription as active subscription to be used for computations.","operationId":"selectSubscription","parameters":[{"name":"sid","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account information with updated active subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/api/projects/{projectId}/jobs":{"get":{"tags":["Jobs"],"summary":"Get List of all available jobs with information such as current state and progress (if available).","description":"Get List of all available jobs with information such as current state and progress (if available).","operationId":"getJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}}}}},"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with given parameters.","description":"Start computation for given compounds and with given parameters.","operationId":"startJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"configuration of the job that will be submitted of the job to be returned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"* Delete ALL jobs.","description":"* Delete ALL jobs. Specify how to behave for running jobs.","operationId":"deleteJobs","parameters":[{"name":"projectId","in":"path","description":"project-space to delete jobs from","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/from-config":{"post":{"tags":["Jobs"],"summary":"Start computation for given compounds and with parameters from a stored job-config.","description":"Start computation for given compounds and with parameters from a stored job-config.","operationId":"startJobFromConfig","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobConfigName","in":"query","description":"name if the config to be used","required":true,"schema":{"type":"string"}},{"name":"recompute","in":"query","description":"enable or disable recompute. If null the stored value will be used.","required":false,"schema":{"type":"boolean"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["command","progress"]}}],"requestBody":{"description":"List of alignedFeatureIds to be computed","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"202":{"description":"Accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files":{"post":{"tags":["Projects"],"summary":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","description":"Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedData","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to import into project","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/preprocessed-data-files-job":{"post":{"tags":["Projects"],"summary":"Import ms/ms data from the given format into the specified project-space as background job.","description":"Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)","operationId":"importPreprocessedDataAsJob","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"ignoreFormulas","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"allowMs1Only","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","items":{"type":"string","format":"binary"}}}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/import/ms-data-files":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","description":"Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)","operationId":"importMsRunData","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResult"}}}}}}},"/api/projects/{projectId}/import/ms-data-files-job":{"post":{"tags":["Projects"],"summary":"Import and Align full MS-Runs from various formats into the specified project as background job.","description":"Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)","operationId":"importMsRunDataAsJob","parameters":[{"name":"projectId","in":"path","description":"Project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"Set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles","parameters"],"type":"object","properties":{"inputFiles":{"type":"array","description":"Files to import into project.","items":{"type":"string","format":"binary"}},"parameters":{"$ref":"#/components/schemas/LcmsSubmissionParameters"}}},"encoding":{"parameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"the import job.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}}},"/api/projects/{projectId}/gui":{"post":{"tags":["Gui"],"summary":"Open GUI instance on specified project-space and bring the GUI window to foreground.","description":"Open GUI instance on specified project-space and bring the GUI window to foreground.","operationId":"openGui","parameters":[{"name":"projectId","in":"path","description":"of project-space the GUI instance will connect to.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"}}},"delete":{"tags":["Gui"],"summary":"Close GUI instance of given project-space if available.","description":"Close GUI instance of given project-space if available.","operationId":"closeGui","parameters":[{"name":"projectId","in":"path","description":"if project-space the GUI instance is connected to.","required":true,"schema":{"type":"string"}},{"name":"closeProject","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups/{groupName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag group by name in the given project-space","description":"[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroupByName","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"post":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Group tags in the project","description":"[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of the new group","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter query to create the group","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"type of the group","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tag group that was added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagGroup"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteGroup","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"path","description":"name of group to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds":{"get":{"tags":["Compounds"],"summary":"List of all available compounds (group of ion identities) in the given project-space.","description":"List of all available compounds (group of ion identities) in the given project-space.","operationId":"getCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}},"post":{"tags":["Compounds"],"summary":"Import Compounds and its contained features.","description":"Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addCompounds","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","description":"set of optional fields of the nested features to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the compound data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompoundImport"}}}},"required":true},"responses":{"200":{"description":"the Compounds that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}}}}}}}},"/api/projects/{projectId}/aligned-features":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}},"post":{"tags":["Features"],"summary":"Import (aligned) features into the project.","description":"Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.","operationId":"addAlignedFeatures","parameters":[{"name":"projectId","in":"path","description":"project-space to import into.","required":true,"schema":{"type":"string"}},{"name":"profile","in":"query","description":"profile describing the instrument used to measure the data. Used to merge spectra.","required":false,"schema":{"type":"string","nullable":true,"enum":["QTOF","ORBITRAP"]}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"requestBody":{"description":"the feature data to be imported","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"required":true},"responses":{"200":{"description":"the Features that have been imported with specified optional fields","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}}}}}}}},"/api/job-configs/{name}":{"get":{"tags":["Jobs"],"summary":"Request job configuration with given name.","description":"Request job configuration with given name.","operationId":"getJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to return","required":true,"schema":{"type":"string"}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} for given name.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"post":{"tags":["Jobs"],"summary":"Add new job configuration with given name.","description":"Add new job configuration with given name.","operationId":"saveJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to add","required":true,"schema":{"type":"string"}},{"name":"overrideExisting","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job configuration with given name.","description":"Delete job configuration with given name.","operationId":"deleteJobConfig","parameters":[{"name":"name","in":"path","description":"name of the job-config to delete","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"}}}},"/api/job-configs/get-command":{"post":{"tags":["Jobs"],"summary":"Get a CLI command for the given job configuration.","description":"Get a CLI command for the given job configuration.","operationId":"getCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}}}},"/api/databases":{"get":{"tags":["Searchable Databases"],"operationId":"getDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"post":{"tags":["Searchable Databases"],"summary":"DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.","operationId":"addDatabases","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}},"deprecated":true}},"/api/databases/{databaseId}/import/from-files":{"post":{"tags":["Searchable Databases"],"summary":"Start import of structure and spectra files into the specified database.","description":"Start import of structure and spectra files into the specified database.","operationId":"importIntoDatabase","parameters":[{"name":"databaseId","in":"path","description":"database to import into","required":true,"schema":{"type":"string"}},{"name":"bufferSize","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1000}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["inputFiles"],"type":"object","properties":{"inputFiles":{"type":"array","description":"files to be imported","items":{"type":"string","format":"binary"}},"bioTransformerParameters":{"$ref":"#/components/schemas/BioTransformerParameters"}}},"encoding":{"bioTransformerParameters":{"contentType":"application/json"},"inputFiles":{"contentType":"application/octet-stream"}}}}},"responses":{"200":{"description":"Meta-Information of the affected database after the import has been performed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}},"/api/account/logout":{"post":{"tags":["Login and Account"],"summary":"Logout from SIRIUS web services.","description":"Logout from SIRIUS web services.","operationId":"logout","responses":{"200":{"description":"OK"}}}},"/api/account/login":{"post":{"tags":["Login and Account"],"summary":"Login into SIRIUS web services and activate default subscription if available.","description":"Login into SIRIUS web services and activate default subscription if available.","operationId":"login","parameters":[{"name":"acceptTerms","in":"query","required":true,"schema":{"type":"boolean"}},{"name":"failWhenLoggedIn","in":"query","description":"if true request fails if an active login already exists.","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"used to log in.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountCredentials"}}},"required":true},"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/shutdown":{"post":{"tags":["Actuator"],"summary":"Actuator web endpoint 'shutdown'","operationId":"shutdown","responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request"}}}},"/api/projects/{projectId}/tags/{tagName}":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get tag definition by its name in the given project-space","description":"[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTag","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tag definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}},"delete":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space","description":"[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteTag","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag definition to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}},"patch":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Add a possible value to the tag definition in the project","description":"[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"addPossibleValuesToTagDefinition","parameters":[{"name":"projectId","in":"path","description":"project-space to add to.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"the tag definition to add the values to","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}},"required":true},"responses":{"200":{"description":"the definitions of the tags that have been added","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagDefinition"}}}}}}},"/api/projects":{"get":{"tags":["Projects"],"summary":"List opened project spaces.","description":"List opened project spaces.","operationId":"getProjects","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInfo"}}}}}}}},"/api/projects/{projectId}/runs/{runId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space","description":"[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"identifier of run to access.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Run with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Run"}}}}}}},"/api/projects/{projectId}/runs/tags/{objectId}":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all tags associated with this Run","description":"[EXPERIMENTAL] Get all tags associated with this Run","operationId":"getTagsForRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"RunId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/runs/tagged":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag","description":"[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get runs from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/page":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get all available runs in the given project-space","description":"[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunPageExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":[]}}],"responses":{"200":{"description":"Runs with tags (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/runs/grouped":{"get":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Get runs by tag group","description":"[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getRunsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"$ref":"#/components/schemas/RunOptField"},"default":["none"]}}],"responses":{"200":{"description":"tagged runs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelRun"}}}}}}},"/api/projects/{projectId}/npc-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for NPC classes","operationId":"getCanopusNpcData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/jobs/{jobId}":{"get":{"tags":["Jobs"],"summary":"Get job information and its current state and progress (if available).","description":"Get job information and its current state and progress (if available).","operationId":"getJob","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be returned","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["progress"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}}}},"delete":{"tags":["Jobs"],"summary":"Delete job.","description":"Delete job. Specify how to behave for running jobs.","operationId":"deleteJob","parameters":[{"name":"projectId","in":"path","description":"project-space to delete job from","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","description":"of the job to be deleted","required":true,"schema":{"type":"string"}},{"name":"cancelIfRunning","in":"query","description":"If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.","required":false,"schema":{"type":"boolean","default":true}},{"name":"awaitDeletion","in":"query","description":"If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"202":{"description":"Accepted"}}}},"/api/projects/{projectId}/jobs/page":{"get":{"tags":["Jobs"],"summary":"Get Page of jobs with information such as current state and progress (if available).","description":"Get Page of jobs with information such as current state and progress (if available).","operationId":"getJobsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to run jobs on","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","command","progress","affectedIds"]},"default":["none"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelJob"}}}}}}},"/api/projects/{projectId}/has-jobs":{"get":{"tags":["Jobs"],"operationId":"hasJobs","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeFinished","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/projects/{projectId}/groups":{"get":{"tags":["Tags"],"summary":"[EXPERIMENTAL] Get all tag based groups in the given project-space","description":"[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getGroups","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"groupType","in":"query","description":"type of the group","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Groups.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagGroup"}}}}}}}},"/api/projects/{projectId}/fingerid-data":{"get":{"tags":["Projects"],"summary":"Get CSI:FingerID fingerprint (prediction vector) definition","operationId":"getFingerIdData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}":{"get":{"tags":["Compounds"],"summary":"Get compound (group of ion identities) with the given identifier from the specified project-space.","description":"Get compound (group of ion identities) with the given identifier from the specified project-space.","operationId":"getCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound (group of ion identities) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Compound"}}}}}},"delete":{"tags":["Compounds"],"summary":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","description":"Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.","operationId":"deleteCompound","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"identifier of the compound to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/{compoundId}/traces":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the traces of the given compound","description":"[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"featureId","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Traces of the given compound.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/compounds/{compoundId}/quant-table-row":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given compound","description":"[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound which should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/tags/{objectId}":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get all tags associated with this Compound","description":"[EXPERIMENTAL] Get all tags associated with this Compound","operationId":"getTagsForCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"CompoundId to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested Compound","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/compounds/tagged":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get compounds (group of ion identities) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table":{"get":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/compounds/quant-table":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Returns the full quantification table of compounds","description":"[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*","operationId":"getCompoundQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/compounds/page":{"get":{"tags":["Compounds"],"summary":"Page of available compounds (group of ion identities) in the given project-space.","description":"Page of available compounds (group of ion identities) in the given project-space.","operationId":"getCompoundsPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}},{"name":"optFieldsFeatures","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"Compounds with additional optional fields (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/compounds/grouped":{"get":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group","description":"[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getCompoundsByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","consensusAnnotations","consensusAnnotationsDeNovo","customAnnotations","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged compounds (group of ion identities)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelCompound"}}}}}}},"/api/projects/{projectId}/cf-data":{"get":{"tags":["Projects"],"summary":"Get CANOPUS prediction vector definition for ClassyFire classes","operationId":"getCanopusClassyFireData","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"charge","in":"query","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/csv":{"schema":{"type":"string"}},"application/CSV":{"schema":{"type":"string"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}":{"get":{"tags":["Features"],"summary":"Get feature (aligned over runs) with the given identifier from the specified project-space.","description":"Get feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"getAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeature with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeature"}}}}}},"delete":{"tags":["Features"],"summary":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","description":"Delete feature (aligned over runs) with the given identifier from the specified project-space.","operationId":"deleteAlignedFeature","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which intensities should be read out","required":true,"schema":{"type":"string"}},{"name":"includeAll","in":"query","description":"when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Traces of the given feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches":{"get":{"tags":["Features"],"summary":"List of spectral library matches for the given 'alignedFeatureId'.","description":"List of spectral library matches for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatches","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}":{"get":{"tags":["Features"],"summary":"Spectral library match for the given 'alignedFeatureId'.","description":"Spectral library match for the given 'alignedFeatureId'.","operationId":"getSpectralLibraryMatch","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations","description":"[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectralLibraryMatchExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"matchId","in":"path","description":"id of the library match to be returned.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Spectral library match with requested mathcId.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary":{"get":{"tags":["Features"],"summary":"Summarize matched reference spectra for the given 'alignedFeatureId'.","description":"Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesSummary","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"minSharedPeaks","in":"query","description":"min threshold of shared peaks.","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","description":"min spectral similarity threshold.","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","description":"2D inchi key of the compound in the structure database.","required":false,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpectralLibraryMatchSummary"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page":{"get":{"tags":["Features"],"summary":"Page of spectral library matches for the given 'alignedFeatureId'.","description":"Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.","operationId":"getSpectralLibraryMatchesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"minSharedPeaks","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":1}},{"name":"minSimilarity","in":"query","required":false,"schema":{"type":"number","format":"double","default":0.2}},{"name":"inchiKey","in":"query","required":false,"schema":{"type":"string","default":""}},{"name":"optFields","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","referenceSpectrum"]},"default":["none"]}}],"responses":{"200":{"description":"Spectral library matches of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelSpectralLibraryMatch"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getQuantTableRowExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature which quantity should be read out","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table row for this feature","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ","description":"[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureQualityExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"identifier of feature (aligned over runs) to access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"AlignedFeatureQuality quality information of the respective feature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlignedFeatureQualityExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data":{"get":{"tags":["Features"],"summary":"Mass Spec data (input data) for the given 'alignedFeatureId' .","description":"Mass Spec data (input data) for the given 'alignedFeatureId' .","operationId":"getMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the Mass Spec data belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Mass Spec data of this feature (aligned over runs).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas":{"get":{"tags":["Features"],"summary":"List of FormulaResultContainers available for this feature with minimal information.","description":"List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}":{"get":{"tags":["Features"],"summary":"FormulaResultContainers for the given 'formulaId' with minimal information.","description":"FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.","operationId":"getFormulaCandidate","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"FormulaCandidate of this feature (aligned over runs) with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ","description":"[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedSpectrumExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey","description":"[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getStructureAnnotatedMsDataExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"inchiKey","in":"path","description":"2d InChIKey of the structure candidate to be used to annotate the spectrum annotation","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragments and sub-structures.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation":{"get":{"tags":["Features"],"summary":"Returns Lipid annotation (ElGordo) for the given formulaId","description":"Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.","operationId":"getLipidAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"LipidAnnotation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LipidAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern":{"get":{"tags":["Features"],"summary":"Returns Isotope pattern information for given formulaId\n ","description":"Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).","operationId":"getIsotopePatternAnnotation","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Isotope pattern information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IsotopePatternAnnotation"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree":{"get":{"tags":["Features"],"summary":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ","description":"Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).","operationId":"getFragTree","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Fragmentation Tree","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FragmentationTree"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint":{"get":{"tags":["Features"],"summary":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ","description":"Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.","operationId":"getFingerprintPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"probabilistic fingerprint predicted by CSI:FingerID","content":{"application/json":{"schema":{"type":"array","items":{"type":"number","format":"double"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures":{"get":{"tags":["Features"],"summary":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures":{"get":{"tags":["Features"],"summary":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormula","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.","description":"Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesByFormulaPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this formula candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateScored"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction":{"get":{"tags":["Features"],"summary":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","description":"All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,","operationId":"getCanopusPrediction","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CanopusPrediction"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes":{"get":{"tags":["Features"],"summary":"Return Best matching compound classes for given formulaId","description":"Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,","operationId":"getBestMatchingCompoundClasses","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Best matching Predicted compound classes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompoundClasses"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum":{"get":{"tags":["Features"],"summary":"Returns a fragmentation spectrum (e","description":"Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.","operationId":"getFormulaAnnotatedSpectrum","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"spectrumIndex","in":"query","description":"index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)","required":false,"schema":{"type":"integer","format":"int32","default":-1}},{"name":"searchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectrum annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata":{"get":{"tags":["Features"],"summary":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId","description":"Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.","operationId":"getFormulaAnnotatedMsMsData","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"formulaId","in":"path","description":"identifier of the requested formula result","required":true,"schema":{"type":"string"}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Fragmentation spectra annotated with fragment formulas and losses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnnotatedMsMsData"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page":{"get":{"tags":["Features"],"summary":"Page of FormulaResultContainers available for this feature with minimal information.","description":"Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.","operationId":"getFormulaCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the formula result belongs to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","statistics","fragmentationTree","annotatedSpectrum","isotopePattern","lipidAnnotation","predictedFingerprint","compoundClasses","canopusPredictions"]},"default":["none"]}}],"responses":{"200":{"description":"All FormulaCandidate of this feature with.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelFormulaCandidate"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page":{"get":{"tags":["Features"],"summary":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","description":"Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.","operationId":"getDeNovoStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures":{"get":{"tags":["Features"],"summary":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidates","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page":{"get":{"tags":["Features"],"summary":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.","description":"Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.","operationId":"getStructureCandidatesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) the structure candidates belong to.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","fingerprint","dbLinks","libraryMatches","structureSvg"]},"default":["none"]}}],"responses":{"200":{"description":"StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelStructureCandidateFormula"}}}}}}},"/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network","description":"[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAdductNetworkWithMergedTracesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"one feature that is considered the main feature of the adduct network","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TraceSetExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/tags/{objectId}":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get all tags associated with this Object","description":"[EXPERIMENTAL] Get all tags associated with this Object","operationId":"getTagsForAlignedFeaturesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to get from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"object to get tags for.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the tags of the requested object","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}}}}},"/api/projects/{projectId}/aligned-features/tagged":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByTagExperimental","parameters":[{"name":"projectId","in":"path","description":"project space to get features (aligned over runs) from.","required":true,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"tag filter.","required":false,"schema":{"type":"string","default":""}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":[]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] List all fold changes that are associated with an object","description":"[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFoldChangesByAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"objectId","in":"path","description":"id of the object the fold changes are assigned to.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"fold changes","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FoldChange"}}}}}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table":{"get":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Get table of all fold changes in the project space","description":"[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeatureFoldChangeTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","description":"aggregation type.","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"table of fold changes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsTable"}}}}}}},"/api/projects/{projectId}/aligned-features/quant-table":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)","description":"[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getFeatureQuantTableExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"quantification type.","required":false,"schema":{"type":"string","default":"APEX_HEIGHT","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"Quant table if akk feature in this project","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuantTableExperimental"}}}}}}},"/api/projects/{projectId}/aligned-features/page":{"get":{"tags":["Features"],"summary":"Get all available features (aligned over runs) in the given project-space.","description":"Get all available features (aligned over runs) in the given project-space.","operationId":"getAlignedFeaturesPaged","parameters":[{"name":"projectId","in":"path","description":"project-space to read from.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"msDataSearchPrepared","in":"query","description":"Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.","required":false,"schema":{"type":"boolean","default":false}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"AlignedFeatures with additional annotations and MS/MS data (if specified).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/projects/{projectId}/aligned-features/grouped":{"get":{"tags":["Features"],"summary":"[EXPERIMENTAL] Get features (aligned over runs) by tag group","description":"[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"getAlignedFeaturesByGroupExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"groupName","in":"query","description":"tag group name.","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Zero-based page index (0..N)","required":false,"schema":{"minimum":0,"type":"integer","default":0}},{"name":"size","in":"query","description":"The size of the page to be returned","required":false,"schema":{"minimum":1,"type":"integer","default":20}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"optFields","in":"query","description":"set of optional fields to be included. Use 'none' only to override defaults.","required":false,"schema":{"type":"array","items":{"type":"string","nullable":true,"enum":["none","msData","topAnnotationsSummary","topAnnotations","topAnnotationsDeNovo","computedTools","tags"]},"default":["none"]}}],"responses":{"200":{"description":"tagged features (aligned over runs)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedModelAlignedFeature"}}}}}}},"/api/job-configs":{"get":{"tags":["Jobs"],"summary":"Request all available job configurations","description":"Request all available job configurations","operationId":"getJobConfigs","responses":{"200":{"description":"list of available {@link JobSubmission JobSubmission}s","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StoredJobSubmission"}}}}}}}},"/api/job-config-names":{"get":{"tags":["Jobs"],"summary":"[DEPRECATED] Get all (non-default) job configuration names\n ","description":"[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.","operationId":"getJobConfigNames","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"deprecated":true}},"/api/info":{"get":{"tags":["Info"],"operationId":"getInfo","parameters":[{"name":"serverInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}},{"name":"updateInfo","in":"query","required":false,"schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Info"}}}}}}},"/api/guis":{"get":{"tags":["Gui"],"summary":"Get list of currently running gui windows, managed by this SIRIUS instance.","description":"Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!","operationId":"getGuis","responses":{"200":{"description":"List of GUI windows that are currently managed by this SIRIUS instance.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GuiInfo"}}}}}}}},"/api/default-job-config":{"get":{"tags":["Jobs"],"summary":"Request default job configuration","description":"Request default job configuration","operationId":"getDefaultJobConfig","parameters":[{"name":"includeConfigMap","in":"query","description":"if true, generic configmap with-defaults will be included","required":false,"schema":{"type":"boolean","default":false}},{"name":"moveParametersToConfigMap","in":"query","description":"if true, object-based parameters will be converted to and added to the generic configMap parameters","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeCustomDbsForStructureSearch","in":"query","description":"if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"{@link JobSubmission JobSubmission} with all parameters set to default values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobSubmission"}}}}}}},"/api/databases/included":{"get":{"tags":["Searchable Databases"],"operationId":"getIncludedDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/databases/custom":{"get":{"tags":["Searchable Databases"],"operationId":"getCustomDatabases","parameters":[{"name":"includeStats","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"includeWithErrors","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SearchableDatabase"}}}}}}}},"/api/connection-status":{"get":{"tags":["Info"],"operationId":"getConnectionCheck","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCheck"}}}}}}},"/api/account/subscriptions":{"get":{"tags":["Login and Account"],"summary":"Get available subscriptions of the account currently logged in.","description":"Get available subscriptions of the account currently logged in. Fails if not logged in.","operationId":"getSubscriptions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}}}}}}}},"/api/account/signUp":{"get":{"tags":["Login and Account"],"summary":"Open SignUp window in system browser and return signUp link.","description":"Open SignUp window in system browser and return signUp link.","operationId":"signUp","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/signUpURL":{"get":{"tags":["Login and Account"],"summary":"Get SignUp URL (For signUp via web browser)","description":"Get SignUp URL (For signUp via web browser)","operationId":"getSignUpURL","responses":{"200":{"description":"OK","content":{"text/plain;charset=UTF-8":{"schema":{"type":"string"}}}}}}},"/api/account/openPortal":{"get":{"tags":["Login and Account"],"summary":"Open User portal in browser.","description":"Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.","operationId":"openPortal","responses":{"200":{"description":"OK"}}}},"/api/account/isLoggedIn":{"get":{"tags":["Login and Account"],"summary":"Check if a user is logged in.","description":"Check if a user is logged in.","operationId":"isLoggedIn","responses":{"200":{"description":"true if the user is logged in","content":{"application/json":{"schema":{"type":"boolean"}}}}}}},"/api/account/":{"get":{"tags":["Login and Account"],"summary":"Get information about the account currently logged in.","description":"Get information about the account currently logged in. Fails if not logged in.","operationId":"getAccountInfo","parameters":[{"name":"includeSubs","in":"query","description":"include available and active subscriptions in {@link AccountInfo AccountInfo}.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Basic information about the account that has been logged in and its subscriptions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountInfo"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/api/projects/{projectId}/runs/tags/{runId}/{tagName}":{"delete":{"tags":["Runs"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromRunExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"runId","in":"path","description":"run to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}":{"delete":{"tags":["Compounds"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromCompoundExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"compoundId","in":"path","description":"compound (group of ion identities) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/compounds/statistics/foldchanges":{"delete":{"tags":["Compound Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteCompoundFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}":{"delete":{"tags":["Features"],"summary":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space","description":"[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"removeTagFromAlignedFeatureExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"alignedFeatureId","in":"path","description":"feature (aligned over runs) to delete tag from.","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","description":"name of the tag to delete.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/api/projects/{projectId}/aligned-features/statistics/foldchanges":{"delete":{"tags":["Feature Statistics"],"summary":"[EXPERIMENTAL] Delete fold changes","description":"[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.","operationId":"deleteAlignedFeatureFoldChangesExperimental","parameters":[{"name":"projectId","in":"path","description":"project-space to delete from.","required":true,"schema":{"type":"string"}},{"name":"leftGroupName","in":"query","description":"name of the left group.","required":true,"schema":{"type":"string"}},{"name":"rightGroupName","in":"query","description":"name of the right group.","required":true,"schema":{"type":"string"}},{"name":"aggregation","in":"query","required":false,"schema":{"type":"string","default":"AVG","enum":["AVG","MIN","MAX"]}},{"name":"quantification","in":"query","required":false,"schema":{"type":"string","default":"APEX_INTENSITY","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]}}],"responses":{"200":{"description":"OK"}}}}},"components":{"schemas":{"ProjectChangeEvent":{"type":"object","properties":{"eventType":{"type":"string","enum":["PROJECT_OPENED","PROJECT_MOVED","PROJECT_CLOSED","FEATURE_CREATED","FEATURE_UPDATED","FEATURE_DELETED","RESULT_CREATED","RESULT_UPDATED","RESULT_DELETED"]},"projectId":{"type":"string"},"compoundId":{"type":"string","nullable":true},"featuredId":{"type":"string","nullable":true},"formulaId":{"type":"string","nullable":true},"structureInChIKey":{"type":"string","nullable":true}}},"DataImportEvent":{"required":["importedCompoundIds","importedFeatureIds"],"type":"object","properties":{"importJobId":{"type":"string","nullable":true},"importedCompoundIds":{"type":"array","items":{"type":"string"}},"importedFeatureIds":{"type":"array","items":{"type":"string"}}}},"BackgroundComputationsStateEvent":{"required":["affectedJobs","numberOfFinishedJobs","numberOfJobs","numberOfRunningJobs"],"type":"object","properties":{"affectedJobs":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"numberOfJobs":{"type":"integer","format":"int32"},"numberOfRunningJobs":{"type":"integer","format":"int32"},"numberOfFinishedJobs":{"type":"integer","format":"int32"}}},"ProjectInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"a user selected unique name of the project for easy access."},"location":{"type":"string","description":"storage location of the project."},"description":{"type":"string","description":"Description of this project.","nullable":true},"type":{"type":"string","description":"Type of this project.\n NULL if project type has not yet been specified by importing data.","nullable":true,"enum":["UNIMPORTED","DIRECT_IMPORT","PEAKLISTS","ALIGNED_RUNS","UNALIGNED_RUNS"]},"compatible":{"type":"boolean","description":"Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.","nullable":true},"numOfFeatures":{"type":"integer","description":"Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').","format":"int32","nullable":true},"numOfCompounds":{"type":"integer","description":"Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.","format":"int32","nullable":true},"numOfBytes":{"type":"integer","description":"Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').","format":"int64","nullable":true}}},"TagDefinitionImport":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true}}},"TagDefinition":{"required":["tagName","valueType"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of this tag defined by this definition (key)"},"description":{"type":"string","description":"A human-readable description about the purpose of this tag.","nullable":true},"tagType":{"type":"string","description":"A simple string based identifier to specify the type/scope/purpose of this tag.","nullable":true},"valueType":{"type":"string","enum":["NONE","BOOLEAN","INTEGER","REAL","TEXT","DATE","TIME"]},"possibleValues":{"type":"array","nullable":true,"items":{"type":"object","nullable":true}},"minValue":{"type":"object","nullable":true},"maxValue":{"type":"object","nullable":true},"editable":{"type":"boolean"}}},"Tag":{"required":["tagName"],"type":"object","properties":{"tagName":{"type":"string","description":"Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition."},"value":{"type":"object","description":"Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).","nullable":true}}},"SampleTypeFoldChangeRequest":{"type":"object","properties":{"sampleRunIds":{"type":"array","items":{"type":"string"}},"blankRunIds":{"type":"array","items":{"type":"string"}},"controlRunIds":{"type":"array","items":{"type":"string"}}}},"Job":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier to access the job via the API"},"command":{"type":"string","description":"Command string of the executed Task","nullable":true},"progress":{"$ref":"#/components/schemas/JobProgress"},"affectedCompoundIds":{"type":"array","description":"List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished","nullable":true,"items":{"type":"string","nullable":true}},"jobEffect":{"type":"string","description":"Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested","nullable":true,"enum":["IMPORT","COMPUTATION","DELETION"]}},"description":"Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal."},"JobProgress":{"type":"object","properties":{"indeterminate":{"type":"boolean","description":"Is the progress indeterminate or not","nullable":true},"state":{"type":"string","description":"Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.","enum":["WAITING","READY","QUEUED","SUBMITTED","RUNNING","CANCELED","FAILED","DONE"]},"currentProgress":{"type":"integer","description":"Current progress value of the job.","format":"int64","nullable":true},"maxProgress":{"type":"integer","description":"Progress value to reach (might also change during execution)","format":"int64","nullable":true},"message":{"type":"string","description":"Progress information and warnings.","nullable":true},"errorMessage":{"type":"string","description":"Error message if the job did not finish successfully failed.","nullable":true}},"description":"Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.","nullable":true},"BasicSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/SimplePeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true}},"nullable":true},"BinaryFingerprint":{"type":"object","properties":{"bitsSet":{"type":"array","description":"Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)","items":{"type":"integer","format":"int32"}},"length":{"type":"integer","description":"Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits","format":"int32"}},"nullable":true},"DBLink":{"required":["name"],"type":"object","properties":{"name":{"type":"string"},"id":{"type":"string"}},"nullable":true},"PeakPair":{"required":["queryPeak","referencePeak"],"type":"object","properties":{"queryPeak":{"type":"integer","format":"int32"},"referencePeak":{"type":"integer","format":"int32"}}},"SimplePeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"}}},"SpectralLibraryMatch":{"required":["inchiKey","querySpectrumIndex","similarity","uuid"],"type":"object","properties":{"specMatchId":{"type":"string"},"rank":{"type":"integer","format":"int32"},"similarity":{"type":"number","description":"Similarity between query and reference spectrum","format":"float"},"sharedPeaks":{"type":"integer","description":"Number of shared/matched peaks","format":"int32"},"sharedPeakMapping":{"type":"array","description":"List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)","items":{"$ref":"#/components/schemas/PeakPair"}},"querySpectrumIndex":{"type":"integer","format":"int32"},"dbName":{"type":"string"},"dbId":{"type":"string"},"uuid":{"type":"integer","format":"int64"},"splash":{"type":"string"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"},"exactMass":{"type":"number","format":"double"},"smiles":{"type":"string"},"type":{"type":"string","default":"IDENTITY","enum":["IDENTITY","ANALOG"]},"inchiKey":{"type":"string"},"referenceSpectrumType":{"type":"string","default":"SPECTRUM","enum":["SPECTRUM","MERGED_SPECTRUM"]},"referenceSpectrum":{"$ref":"#/components/schemas/BasicSpectrum"},"querySpectrumType":{"type":"string","enum":["SPECTRUM","MERGED_SPECTRUM"]}},"nullable":true},"StructureCandidateFormula":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"},"molecularFormula":{"type":"string","description":"Molecular formula of this candidate"},"adduct":{"type":"string","description":"Adduct of this candidate"},"formulaId":{"type":"string","description":"Id of the corresponding Formula candidate"}}},"SearchableDatabaseParameters":{"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false}}},"SearchableDatabase":{"required":["customDb","databaseId","searchable","updateNeeded"],"type":"object","properties":{"displayName":{"type":"string","description":"display name of the database\n Should be short","nullable":true},"location":{"type":"string","description":"Storage location of user database\n Might be NULL for non-user databases or if default location is used.","nullable":true},"matchRtOfReferenceSpectra":{"type":"boolean","description":"Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on","nullable":true,"default":false},"databaseId":{"type":"string","description":"A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name."},"customDb":{"type":"boolean","description":"Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified."},"searchable":{"type":"boolean","description":"True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search."},"dbDate":{"type":"string","description":"Date on which the data was imported / database was created.","nullable":true},"dbVersion":{"type":"integer","description":"database schema version","format":"int32","nullable":true},"updateNeeded":{"type":"boolean","description":"If true the database version is outdated and the database needs to be updated or re-imported before it can be used."},"numberOfStructures":{"type":"integer","description":"Number of unique compounds available in this database.","format":"int64","nullable":true},"numberOfFormulas":{"type":"integer","description":"Number of different molecular formulas available in this database.","format":"int64","nullable":true},"numberOfReferenceSpectra":{"type":"integer","description":"Number of reference spectra available in this database","format":"int64","nullable":true},"errorMessage":{"type":"string","description":"Error message if the database could not be loaded","nullable":true}}},"AccountInfo":{"type":"object","properties":{"userID":{"type":"string"},"username":{"type":"string","nullable":true},"userEmail":{"type":"string"},"gravatarURL":{"type":"string","nullable":true},"subscriptions":{"type":"array","items":{"$ref":"#/components/schemas/Subscription"}},"activeSubscriptionId":{"type":"string","nullable":true}}},"AllowedFeatures":{"type":"object","properties":{"cli":{"type":"boolean"},"api":{"type":"boolean"},"deNovo":{"type":"boolean"},"importMSRuns":{"type":"boolean"},"importPeakLists":{"type":"boolean"},"importCef":{"type":"boolean"}}},"Subscription":{"type":"object","properties":{"sid":{"type":"string","description":"Unique identifier of this subscription"},"subscriberId":{"type":"string","description":"ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid."},"subscriberName":{"type":"string","description":"Optional name of the owner of this subscription","nullable":true},"expirationDate":{"type":"string","format":"date-time","nullable":true},"startDate":{"type":"string","format":"date-time","nullable":true},"countQueries":{"type":"boolean","nullable":true},"instanceLimit":{"type":"integer","description":"Limit of instances (features) that can be computed with this subscription","format":"int32","nullable":true},"instanceHashRecordingTime":{"type":"integer","description":"Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is","format":"int32","nullable":true},"maxQueriesPerInstance":{"type":"integer","description":"Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.","format":"int32","nullable":true},"maxUserAccounts":{"type":"integer","format":"int32","nullable":true},"serviceUrl":{"type":"string"},"description":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"tos":{"type":"string","nullable":true},"pp":{"type":"string","nullable":true},"allowedFeatures":{"$ref":"#/components/schemas/AllowedFeatures"}}},"Canopus":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"}},"description":"User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool","nullable":true},"FingerprintPrediction":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"useScoreThreshold":{"type":"boolean","description":"If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.","nullable":true},"alwaysPredictHighRefMatches":{"type":"boolean","description":"If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.","nullable":true}},"description":"User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool","nullable":true},"JobSubmission":{"type":"object","properties":{"compoundIds":{"type":"array","description":"Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"alignedFeatureIds":{"type":"array","description":"Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.","nullable":true,"items":{"type":"string","nullable":true}},"fallbackAdducts":{"type":"array","description":"Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"enforcedAdducts":{"type":"array","description":"Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"detectableAdducts":{"type":"array","description":"Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-","nullable":true,"items":{"type":"string","nullable":true}},"recompute":{"type":"boolean","description":"Indicate if already existing result for a tool to be executed should be overwritten or not.","nullable":true},"spectraSearchParams":{"$ref":"#/components/schemas/SpectralLibrarySearch"},"formulaIdParams":{"$ref":"#/components/schemas/Sirius"},"zodiacParams":{"$ref":"#/components/schemas/Zodiac"},"fingerprintPredictionParams":{"$ref":"#/components/schemas/FingerprintPrediction"},"canopusParams":{"$ref":"#/components/schemas/Canopus"},"structureDbSearchParams":{"$ref":"#/components/schemas/StructureDbSearch"},"msNovelistParams":{"$ref":"#/components/schemas/MsNovelist"},"configMap":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.","nullable":true}},"description":"Object to submit a job to be executed by SIRIUS"},"MsNovelist":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"numberOfCandidateToPredict":{"type":"integer","description":"Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.","format":"int32","nullable":true}},"nullable":true},"Sirius":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"profile":{"type":"string","description":"Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.","nullable":true,"enum":["QTOF","ORBITRAP"]},"numberOfCandidates":{"type":"integer","description":"Number of formula candidates to keep as result list (Formula Candidates).","format":"int32","nullable":true},"numberOfCandidatesPerIonization":{"type":"integer","description":"Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.","format":"int32","nullable":true},"massAccuracyMS2ppm":{"type":"number","description":"Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.","format":"double","nullable":true},"isotopeMs2Settings":{"type":"string","description":"Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS","nullable":true,"enum":["IGNORE","FILTER","SCORE"]},"filterByIsotopePattern":{"type":"boolean","description":"When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.","nullable":true},"enforceElGordoFormula":{"type":"boolean","description":"El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.","nullable":true},"performBottomUpSearch":{"type":"boolean","description":"If true, molecular formula generation via bottom up search is enabled.","nullable":true},"performDenovoBelowMz":{"type":"number","description":"Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.","format":"double","nullable":true},"formulaSearchDBs":{"type":"array","description":"List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.","nullable":true,"items":{"type":"string","nullable":true}},"applyFormulaConstraintsToDBAndBottomUpSearch":{"type":"boolean","description":"By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.","nullable":true},"enforcedFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered","nullable":true},"fallbackFormulaConstraints":{"type":"string","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)","nullable":true},"detectableElements":{"type":"array","description":"These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)","nullable":true,"items":{"type":"string","nullable":true}},"ilpTimeout":{"$ref":"#/components/schemas/Timeout"},"useHeuristic":{"$ref":"#/components/schemas/UseHeuristic"},"injectSpecLibMatchFormulas":{"type":"boolean","description":"If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied","nullable":true},"minScoreToInjectSpecLibMatch":{"type":"number","description":"Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.","format":"double","nullable":true},"minPeaksToInjectSpecLibMatch":{"type":"integer","description":"Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.","format":"int32","nullable":true}},"description":"User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.","nullable":true},"SpectralLibrarySearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"spectraSearchDBs":{"type":"array","description":"Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"precursorDeviationPpm":{"type":"number","description":"Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.","format":"double","nullable":true},"minSimilarity":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered a hit.","format":"float","nullable":true},"minNumOfPeaks":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered a hit.","format":"int32","nullable":true},"enableAnalogueSearch":{"type":"boolean","description":"Enable analogue search in addition to the identity spectral library search"},"minSimilarityAnalogue":{"type":"number","description":"Minimal spectral similarity of a spectral match to be considered an analogue hit.","format":"float","nullable":true},"minNumOfPeaksAnalogue":{"type":"integer","description":"Minimal number of matching peaks of a spectral match to be considered an analogue hit.","format":"int32","nullable":true},"scoring":{"type":"string","description":"NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.","nullable":true,"deprecated":true,"enum":["INTENSITY","GAUSSIAN","MODIFIED_COSINE","FAST_COSINE"]},"peakDeviationPpm":{"type":"number","description":"NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.","format":"double","nullable":true,"deprecated":true}},"description":"User/developer friendly parameter subset for the Spectral library search tool.","nullable":true},"StructureDbSearch":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"structureSearchDBs":{"type":"array","description":"Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.","nullable":true,"items":{"type":"string","nullable":true}},"tagStructuresWithLipidClass":{"type":"boolean","description":"Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.","nullable":true},"expansiveSearchConfidenceMode":{"type":"string","description":"Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]}},"description":"User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.","nullable":true},"Timeout":{"type":"object","properties":{"numberOfSecondsPerDecomposition":{"type":"integer","format":"int32"},"numberOfSecondsPerInstance":{"type":"integer","format":"int32"}},"nullable":true},"UseHeuristic":{"type":"object","properties":{"useHeuristicAboveMz":{"type":"integer","format":"int32"},"useOnlyHeuristicAboveMz":{"type":"integer","format":"int32"}},"nullable":true},"Zodiac":{"type":"object","properties":{"enabled":{"type":"boolean","description":"tags whether the tool is enabled"},"consideredCandidatesAt300Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.","format":"int32","nullable":true},"consideredCandidatesAt800Mz":{"type":"integer","description":"Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.","format":"int32","nullable":true},"runInTwoSteps":{"type":"boolean","description":"As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.","nullable":true},"edgeFilterThresholds":{"$ref":"#/components/schemas/ZodiacEdgeFilterThresholds"},"gibbsSamplerParameters":{"$ref":"#/components/schemas/ZodiacEpochs"},"librarySearchAnchors":{"$ref":"#/components/schemas/ZodiacLibraryScoring"},"analogueSearchAnchors":{"$ref":"#/components/schemas/ZodiacAnalogueNodes"}},"description":"User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool","nullable":true},"ZodiacAnalogueNodes":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"},"minSharedPeaks":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEdgeFilterThresholds":{"type":"object","properties":{"thresholdFilter":{"type":"number","format":"double"},"minLocalCandidates":{"type":"integer","format":"int32"},"minLocalConnections":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacEpochs":{"type":"object","properties":{"iterations":{"type":"integer","format":"int32"},"burnInPeriod":{"type":"integer","format":"int32"},"numberOfMarkovChains":{"type":"integer","format":"int32"}},"nullable":true},"ZodiacLibraryScoring":{"type":"object","properties":{"enabled":{"type":"boolean"},"minSimilarity":{"type":"number","format":"double"}},"nullable":true},"ImportResult":{"required":["affectedAlignedFeatureIds","affectedCompoundIds"],"type":"object","properties":{"affectedCompoundIds":{"type":"array","description":"List of compoundIds that have been imported.","items":{"type":"string"}},"affectedAlignedFeatureIds":{"type":"array","description":"List of alignedFeatureIds that have been imported..","items":{"type":"string"}}}},"Deviation":{"type":"object","properties":{"ppm":{"type":"number","format":"double"},"absolute":{"type":"number","format":"double"}},"nullable":true},"LcmsSubmissionParameters":{"type":"object","properties":{"alignLCMSRuns":{"type":"boolean","description":"Specifies whether LC/MS runs should be aligned","default":true},"noiseIntensity":{"type":"number","description":"Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.","format":"double","default":-1},"traceMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxMassDeviation":{"$ref":"#/components/schemas/Deviation"},"alignMaxRetentionTimeDeviation":{"type":"number","description":"Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.","format":"double","default":-1},"minSNR":{"type":"number","description":"Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory","format":"double","default":3}}},"TagGroup":{"type":"object","properties":{"groupName":{"type":"string","description":"Name of this Grouping query."},"luceneQuery":{"type":"string","description":"Query used to group the entities in lucene format."},"groupType":{"type":"string"}}},"CompoundImport":{"required":["features"],"type":"object","properties":{"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"features":{"type":"array","description":"The features this compound consists of.","items":{"$ref":"#/components/schemas/FeatureImport"}}}},"FeatureImport":{"required":["charge","ionMass"],"type":"object","properties":{"name":{"type":"string","nullable":true},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.","nullable":true},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Detected adducts of this feature. Can be NULL or empty if no adducts are known.","nullable":true,"items":{"type":"string","nullable":true}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"dataQuality":{"type":"string","description":"A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","description":"List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","description":"List of MS/MS spectra that belong to this feature.","nullable":true,"items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail."},"AlignedFeature":{"required":["charge","detectedAdducts"],"type":"object","properties":{"alignedFeatureId":{"type":"string"},"compoundId":{"type":"string"},"name":{"type":"string"},"externalFeatureId":{"type":"string","description":"Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source."},"ionMass":{"type":"number","format":"double"},"charge":{"type":"integer","description":"Ion mode (charge) this feature has been measured in.","format":"int32"},"detectedAdducts":{"uniqueItems":true,"type":"array","description":"Adducts of this feature that have been detected during preprocessing.","items":{"type":"string"}},"rtStartSeconds":{"type":"number","format":"double","nullable":true},"rtEndSeconds":{"type":"number","format":"double","nullable":true},"rtApexSeconds":{"type":"number","format":"double","nullable":true},"quality":{"type":"string","description":"Quality of this feature.","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"hasMs1":{"type":"boolean","description":"If true, the feature has at lease one MS1 spectrum"},"hasMsMs":{"type":"boolean","description":"If true, the feature has at lease one MS/MS spectrum"},"msData":{"$ref":"#/components/schemas/MsData"},"topAnnotations":{"$ref":"#/components/schemas/FeatureAnnotations"},"topAnnotationsDeNovo":{"$ref":"#/components/schemas/FeatureAnnotations"},"computing":{"type":"boolean","description":"Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results"},"computedTools":{"$ref":"#/components/schemas/ComputedSubtools"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}},"description":"The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view."},"AnnotatedPeak":{"type":"object","properties":{"mz":{"type":"number","format":"double"},"intensity":{"type":"number","format":"double"},"peakAnnotation":{"$ref":"#/components/schemas/PeakAnnotation"}}},"AnnotatedSpectrum":{"required":["cosineQuery","peaks"],"type":"object","properties":{"name":{"type":"string","description":"Optional Displayable name of this spectrum.","nullable":true},"msLevel":{"type":"integer","description":"MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero","format":"int32","nullable":true},"collisionEnergy":{"type":"string","description":"Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable","nullable":true},"instrument":{"type":"string","description":"Instrument information.","nullable":true},"precursorMz":{"type":"number","description":"Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable","format":"double","nullable":true},"scanNumber":{"type":"integer","description":"Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)","format":"int32","nullable":true},"cosineQuery":{"type":"boolean","description":"True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.","default":false},"precursorPeak":{"$ref":"#/components/schemas/SimplePeak"},"peaks":{"type":"array","description":"The peaks of this spectrum which might contain additional annotations such as molecular formulas.","items":{"$ref":"#/components/schemas/AnnotatedPeak"}},"absIntensityFactor":{"type":"number","description":"Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.","format":"double","nullable":true,"deprecated":true},"maxNormFactor":{"type":"number","description":"Factor to convert absolute intensities to MAX norm.","format":"double","nullable":true},"sumNormFactor":{"type":"number","description":"Factor to convert absolute intensities to SUM norm.","format":"double","nullable":true},"l2NormFactor":{"type":"number","description":"Factor to convert absolute intensities to L2 (Euclidean) norm.","format":"double","nullable":true},"firstPeakNormFactor":{"type":"number","description":"Factor to convert absolute intensities to normalize intensities by first peak intensity.","format":"double","nullable":true},"spectrumAnnotation":{"$ref":"#/components/schemas/SpectrumAnnotation"}},"description":"Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes","nullable":true},"CanopusPrediction":{"type":"object","properties":{"classyFireClasses":{"type":"array","description":"All predicted ClassyFire classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"npcClasses":{"type":"array","description":"All predicted NPC classes","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.","nullable":true},"Compound":{"type":"object","properties":{"compoundId":{"type":"string","description":"uid of this compound Entity"},"name":{"type":"string","description":"Some (optional) human-readable name","nullable":true},"rtStartSeconds":{"type":"number","description":"The merged/consensus retention time start (earliest rt) of this compound","format":"double","nullable":true},"rtEndSeconds":{"type":"number","description":"The merged/consensus retention time end (latest rt) of this compound","format":"double","nullable":true},"neutralMass":{"type":"number","description":"Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass","format":"double","nullable":true},"features":{"type":"array","description":"List of aligned features (adducts) that belong to the same (this) compound","items":{"$ref":"#/components/schemas/AlignedFeature"}},"consensusAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"consensusAnnotationsDeNovo":{"$ref":"#/components/schemas/ConsensusAnnotationsDeNovo"},"customAnnotations":{"$ref":"#/components/schemas/ConsensusAnnotationsCSI"},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"CompoundClass":{"type":"object","properties":{"type":{"type":"string","description":"Specifies the classification ontology the CompoundClass belongs to.","nullable":true,"enum":["ClassyFire","NPC"]},"level":{"type":"string","description":"Name of the level this compound class belongs to","nullable":true},"levelIndex":{"type":"integer","description":"Index of the level this compound class belongs to","format":"int32","nullable":true},"name":{"type":"string","description":"Name of the compound class.","nullable":true},"description":{"type":"string","description":"Description of the compound class.","nullable":true},"id":{"type":"integer","description":"Unique id of the class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"probability":{"type":"number","description":"prediction probability","format":"double"},"index":{"type":"integer","description":"Absolute index of this property in the predicted vector/embedding","format":"int32"},"parentId":{"type":"integer","description":"Unique id of the parent class. Might be undefined for certain classification ontologies.","format":"int32","nullable":true},"parentName":{"type":"string","description":"Name of the parent compound class.","nullable":true}},"description":"Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to","nullable":true},"CompoundClasses":{"type":"object","properties":{"npcPathway":{"$ref":"#/components/schemas/CompoundClass"},"npcSuperclass":{"$ref":"#/components/schemas/CompoundClass"},"npcClass":{"$ref":"#/components/schemas/CompoundClass"},"classyFireLineage":{"type":"array","description":"Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}},"classyFireAlternatives":{"type":"array","description":"Alternative ClassyFire classes with high probability that do not fit into the linage","nullable":true,"items":{"$ref":"#/components/schemas/CompoundClass"}}},"description":"Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.","nullable":true},"ComputedSubtools":{"type":"object","properties":{"librarySearch":{"type":"boolean"},"formulaSearch":{"type":"boolean"},"zodiac":{"type":"boolean"},"fingerprint":{"type":"boolean"},"canopus":{"type":"boolean"},"structureSearch":{"type":"boolean"},"deNovoSearch":{"type":"boolean"}},"description":"Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.","nullable":true},"ConsensusAnnotationsCSI":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Null if this is a custom selection","nullable":true,"enum":["MAJORITY_STRUCTURE","CONFIDENCE_STRUCTURE","SINGLETON_STRUCTURE","MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]},"csiFingerIdStructure":{"$ref":"#/components/schemas/StructureCandidate"},"confidenceExactMatch":{"type":"number","description":"Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported","format":"double","nullable":true}},"nullable":true},"ConsensusAnnotationsDeNovo":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.","nullable":true},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"supportingFeatureIds":{"type":"array","description":"FeatureIds where the topAnnotation supports this annotation.","nullable":true,"items":{"type":"string","nullable":true}},"selectionCriterion":{"type":"string","description":"Criterion that was used to select the consensus annotation.","nullable":true,"enum":["MAJORITY_FORMULA","TOP_FORMULA","SINGLETON_FORMULA"]}},"nullable":true},"FeatureAnnotations":{"type":"object","properties":{"formulaAnnotation":{"$ref":"#/components/schemas/FormulaCandidate"},"structureAnnotation":{"$ref":"#/components/schemas/StructureCandidateScored"},"compoundClassAnnotation":{"$ref":"#/components/schemas/CompoundClasses"},"confidenceExactMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit is correct.","format":"double","nullable":true},"confidenceApproxMatch":{"type":"number","description":"Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.","format":"double","nullable":true},"expansiveSearchState":{"type":"string","description":"Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)","nullable":true,"enum":["OFF","EXACT","APPROXIMATE"]},"specifiedDatabases":{"type":"array","description":"List of databases that have been specified by for structure db search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}},"expandedDatabases":{"type":"array","description":"List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.","nullable":true,"items":{"type":"string","nullable":true}}},"description":"Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.","nullable":true},"FormulaCandidate":{"type":"object","properties":{"formulaId":{"type":"string","description":"Unique identifier of this formula candidate"},"molecularFormula":{"type":"string","description":"molecular formula of this formula candidate"},"adduct":{"type":"string","description":"Adduct of this formula candidate"},"rank":{"type":"integer","format":"int32"},"siriusScoreNormalized":{"type":"number","description":"Normalized Sirius Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"siriusScore":{"type":"number","description":"Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"isotopeScore":{"type":"number","format":"double","nullable":true},"treeScore":{"type":"number","format":"double","nullable":true},"zodiacScore":{"type":"number","description":"Zodiac Score of the formula candidate.\n If NULL result is not available","format":"double","nullable":true},"numOfExplainedPeaks":{"type":"integer","format":"int32","nullable":true},"numOfExplainablePeaks":{"type":"integer","format":"int32","nullable":true},"totalExplainedIntensity":{"type":"number","format":"double","nullable":true},"medianMassDeviation":{"$ref":"#/components/schemas/Deviation"},"fragmentationTree":{"$ref":"#/components/schemas/FragmentationTree"},"annotatedSpectrum":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"isotopePatternAnnotation":{"$ref":"#/components/schemas/IsotopePatternAnnotation"},"lipidAnnotation":{"$ref":"#/components/schemas/LipidAnnotation"},"predictedFingerprint":{"type":"array","description":"Probabilistic molecular fingerprint predicted by CSI:FingerID","nullable":true,"items":{"type":"number","format":"double","nullable":true}},"compoundClasses":{"$ref":"#/components/schemas/CompoundClasses"},"canopusPrediction":{"$ref":"#/components/schemas/CanopusPrediction"}},"description":"Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.","nullable":true},"FragmentNode":{"type":"object","properties":{"fragmentId":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string","description":"neutral molecular formula of the fragment without adduct","nullable":true},"adduct":{"type":"string","description":"This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.","nullable":true},"massDeviationDa":{"type":"number","format":"double","nullable":true},"massDeviationPpm":{"type":"number","format":"double","nullable":true},"score":{"type":"number","format":"double","nullable":true},"intensity":{"type":"number","format":"double","nullable":true},"mz":{"type":"number","format":"double","nullable":true}}},"FragmentationTree":{"type":"object","properties":{"fragments":{"type":"array","items":{"$ref":"#/components/schemas/FragmentNode"}},"losses":{"type":"array","items":{"$ref":"#/components/schemas/LossEdge"}},"treeScore":{"type":"number","format":"double"},"molecularFormula":{"type":"string"},"adduct":{"type":"string"}},"description":"Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation","nullable":true},"IsotopePatternAnnotation":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"simulatedPattern":{"$ref":"#/components/schemas/BasicSpectrum"}},"nullable":true},"LipidAnnotation":{"type":"object","properties":{"lipidSpecies":{"type":"string","description":"Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.","nullable":true},"lipidMapsId":{"type":"string","description":"LIPID MAPS id of the predicted lipid class.","nullable":true},"lipidClassName":{"type":"string","description":"Human-readable name of the predicted lipid class.","nullable":true},"hypotheticalStructure":{"type":"string","description":"Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.","nullable":true},"chainsUnknown":{"type":"boolean","description":"True of the formula composition of the chains could not be determined from the MS/MS.","nullable":true}},"nullable":true},"LossEdge":{"type":"object","properties":{"sourceFragmentIdx":{"type":"integer","format":"int32"},"targetFragmentIdx":{"type":"integer","format":"int32"},"molecularFormula":{"type":"string"},"score":{"type":"number","format":"double"}}},"MsData":{"type":"object","properties":{"isotopePattern":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs1":{"$ref":"#/components/schemas/BasicSpectrum"},"mergedMs2":{"$ref":"#/components/schemas/BasicSpectrum"},"ms1Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/BasicSpectrum"}}},"description":"The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar","nullable":true},"ParentPeak":{"required":["lossFormula","parentFragmentId","parentIdx"],"type":"object","properties":{"parentIdx":{"type":"integer","description":"Index to the parent peak connected by this loss in this particular spectrum","format":"int32"},"parentFragmentId":{"type":"integer","description":"Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"lossFormula":{"type":"string","description":"Molecular formula of the neutral loss that connects these two peaks."}},"description":"Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.","nullable":true},"PeakAnnotation":{"required":["fragmentId"],"type":"object","properties":{"fragmentId":{"type":"integer","description":"Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.","format":"int32"},"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this peak","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this peak","nullable":true},"exactMass":{"type":"number","description":"Exact mass of the annotated molecular formula and adduct","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the measured peak mass in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the measured peak mass in ppm","format":"double","nullable":true},"recalibratedMassDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa","format":"double","nullable":true},"recalibratedMassDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the recalibrated peak mass in ppm","format":"double","nullable":true},"parentPeak":{"$ref":"#/components/schemas/ParentPeak"},"substructureAtoms":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBonds":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureBondsCut":{"type":"array","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.","nullable":true,"items":{"type":"integer","format":"int32","nullable":true}},"substructureScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.","format":"float","nullable":true},"hydrogenRearrangements":{"type":"integer","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.","format":"int32","nullable":true}},"nullable":true},"SpectrumAnnotation":{"type":"object","properties":{"molecularFormula":{"type":"string","description":"Molecular formula that has been annotated to this spectrum","nullable":true},"adduct":{"type":"string","description":"Adduct that has been annotated to this spectrum","nullable":true},"exactMass":{"type":"number","description":"Exact mass based on the annotated molecular formula and ionization","format":"double","nullable":true},"massDeviationMz":{"type":"number","description":"Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa","format":"double","nullable":true},"massDeviationPpm":{"type":"number","description":"Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm","format":"double","nullable":true},"structureAnnotationSmiles":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationName":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationSvg":{"type":"string","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.","nullable":true},"structureAnnotationScore":{"type":"number","description":"EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.","format":"double","nullable":true}},"nullable":true},"StructureCandidate":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true}},"nullable":true},"StructureCandidateScored":{"type":"object","properties":{"inchiKey":{"type":"string"},"smiles":{"type":"string"},"structureName":{"type":"string","nullable":true},"structureSvg":{"type":"string","description":"SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true},"dbLinks":{"type":"array","description":"List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/DBLink"}},"spectralLibraryMatches":{"type":"array","description":"List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter","nullable":true,"items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"xlogP":{"type":"number","format":"double","nullable":true},"rank":{"type":"integer","description":"the overall rank of this candidate among all candidates of this feature","format":"int32"},"csiScore":{"type":"number","description":"CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates","format":"double"},"tanimotoSimilarity":{"type":"number","description":"Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID","format":"double","nullable":true},"mcesDistToTopHit":{"type":"number","description":"Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.","format":"double","nullable":true},"fingerprint":{"$ref":"#/components/schemas/BinaryFingerprint"}},"nullable":true},"StoredJobSubmission":{"required":["editable","jobSubmission","name"],"type":"object","properties":{"name":{"type":"string","description":"Unique name to identify this JobSubmission (job config)."},"editable":{"type":"boolean","description":"False for predefined configs which are not editable and not removable."},"jobSubmission":{"$ref":"#/components/schemas/JobSubmission"}}},"BioTransformerParameters":{"required":["bioTransformerSequenceSteps","cyp450Mode","p2Mode"],"type":"object","properties":{"cyp450Mode":{"type":"string","description":"Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.","nullable":true,"default":"COMBINED","enum":["RULE_BASED","CY_PRODUCT","COMBINED"]},"p2Mode":{"type":"string","description":"Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.","nullable":true,"default":"BT_RULE_BASED","enum":["BT_RULE_BASED","P2_RULE_ONLY","COMBINED_RULES"]},"useDB":{"type":"boolean","description":"\"Specify if you want to enable the retrieving from database (HMDB) feature.\"","default":true},"bioTransformerSequenceSteps":{"type":"array","description":"Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).","items":{"$ref":"#/components/schemas/BioTransformerSequenceStep"}}}},"BioTransformerSequenceStep":{"type":"object","properties":{"metabolicTransformation":{"type":"string","enum":["PHASE_1_CYP450","EC_BASED","PHASE_2","HUMAN_GUT","ALL_HUMAN","ABIOTIC","HUMAN_CUSTOM_MULTI"]},"iterations":{"type":"integer","format":"int32"}}},"AccountCredentials":{"type":"object","properties":{"username":{"type":"string","nullable":true},"password":{"type":"string","nullable":true},"refreshToken":{"type":"string","nullable":true}},"description":"Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service."},"RunOptField":{"type":"string","nullable":true,"enum":["none","tags"]},"Run":{"type":"object","properties":{"runId":{"type":"string","description":"Identifier"},"name":{"type":"string","description":"Informative, human-readable name of this run"},"source":{"type":"string","description":"Source location"},"chromatography":{"type":"string","nullable":true},"ionization":{"type":"string","nullable":true},"fragmentation":{"type":"string","nullable":true},"massAnalyzers":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"tags":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Tag"},"description":"Key: tagName, value: tag","nullable":true}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelRun":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Run"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelJob":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Job"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AdductEdgeExperimental":{"type":"object","properties":{"mzDelta":{"type":"number","format":"double"},"annotation":{"type":"string"},"from":{"type":"integer","format":"int32"},"to":{"type":"integer","format":"int32"},"mergedCorrelation":{"type":"number","format":"float"},"representativeCorrelation":{"type":"number","format":"float"},"ms2cosine":{"type":"number","format":"float"},"pvalue":{"type":"number","format":"float"},"intensityRatioScore":{"type":"number","format":"float"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNetworkExperimental":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/AdductNodeExperimental"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/AdductEdgeExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"AdductNodeExperimental":{"type":"object","properties":{"alignedFeatureId":{"type":"string"},"mz":{"type":"number","format":"double"},"adductAnnotations":{"type":"object","additionalProperties":{"type":"number","format":"double"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Axes":{"type":"object","properties":{"scanNumber":{"type":"array","items":{"type":"integer","format":"int32"}},"scanIds":{"type":"array","items":{"type":"string"}},"retentionTimeInSeconds":{"type":"array","items":{"type":"number","format":"double"}}}},"TraceAnnotationExperimental":{"type":"object","properties":{"type":{"type":"string","description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.","enum":["FEATURE","MS2"]},"description":{"type":"string","nullable":true},"index":{"type":"integer","format":"int32"},"from":{"type":"integer","format":"int32","nullable":true},"to":{"type":"integer","format":"int32","nullable":true}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceExperimental":{"type":"object","properties":{"id":{"type":"string"},"sampleId":{"type":"string","nullable":true},"sampleName":{"type":"string","nullable":true},"label":{"type":"string"},"color":{"type":"string"},"intensities":{"type":"array","items":{"type":"number","format":"double"}},"annotations":{"type":"array","items":{"$ref":"#/components/schemas/TraceAnnotationExperimental"}},"mz":{"type":"number","format":"double"},"merged":{"type":"boolean"},"normalizationFactor":{"type":"number","description":"Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.","format":"double"},"noiseLevel":{"type":"number","description":"The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.","format":"double"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"TraceSetExperimental":{"type":"object","properties":{"adductNetwork":{"$ref":"#/components/schemas/AdductNetworkExperimental"},"sampleId":{"type":"string"},"sampleName":{"type":"string"},"axes":{"$ref":"#/components/schemas/Axes"},"traces":{"type":"array","items":{"$ref":"#/components/schemas/TraceExperimental"}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"QuantTableExperimental":{"type":"object","properties":{"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"columnIds":{"type":"array","nullable":true,"items":{"type":"integer","format":"int64","nullable":true}},"rowNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"columnNames":{"type":"array","nullable":true,"items":{"type":"string","nullable":true}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"PagedModelCompound":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/Compound"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"FoldChange":{"required":["foldChange","objectId","quantType"],"type":"object","properties":{"leftGroup":{"type":"string"},"rightGroup":{"type":"string"},"aggregation":{"type":"string","enum":["AVG","MIN","MAX"]},"quantification":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"quantType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"objectId":{"type":"string"},"foldChange":{"type":"number","format":"double"}}},"StatisticsTable":{"type":"object","properties":{"statisticsType":{"type":"string","enum":["FOLD_CHANGE"]},"aggregationType":{"type":"string","enum":["AVG","MIN","MAX"]},"quantificationMeasure":{"type":"string","enum":["APEX_INTENSITY","AREA_UNDER_CURVE"]},"rowType":{"type":"string","enum":["FEATURES","COMPOUNDS"]},"rowIds":{"type":"array","items":{"type":"string"}},"columnNames":{"type":"array","items":{"type":"string"}},"columnLeftGroups":{"type":"array","items":{"type":"string"}},"columnRightGroups":{"type":"array","items":{"type":"string"}},"values":{"type":"array","items":{"type":"array","items":{"type":"number","format":"double"}}}}},"SpectralLibraryMatchSummary":{"required":["databaseCompoundCount","referenceSpectraCount","spectralMatchCount"],"type":"object","properties":{"bestMatch":{"$ref":"#/components/schemas/SpectralLibraryMatch"},"spectralMatchCount":{"type":"integer","format":"int64"},"referenceSpectraCount":{"type":"integer","format":"int32"},"databaseCompoundCount":{"type":"integer","format":"int32"}}},"PagedModelSpectralLibraryMatch":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/SpectralLibraryMatch"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"AlignedFeatureQualityExperimental":{"required":["alignedFeatureId","categories","overallQuality"],"type":"object","properties":{"alignedFeatureId":{"type":"string","description":"Id of the feature (aligned over runs) this quality information belongs to."},"overallQuality":{"type":"string","description":"Overall Quality","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"categories":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Category"},"description":"Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.,"}},"description":"EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable."},"Category":{"type":"object","properties":{"categoryName":{"type":"string"},"overallQuality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/QualityItem"}}}},"QualityItem":{"type":"object","properties":{"description":{"type":"string"},"quality":{"type":"string","nullable":true,"enum":["NOT_APPLICABLE","LOWEST","BAD","DECENT","GOOD"]},"weight":{"type":"string","enum":["MINOR","MAJOR","CRITICAL"]}}},"AnnotatedMsMsData":{"required":["mergedMs2","ms2Spectra"],"type":"object","properties":{"mergedMs2":{"$ref":"#/components/schemas/AnnotatedSpectrum"},"ms2Spectra":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSpectrum"}}}},"PagedModelStructureCandidateScored":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateScored"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelFormulaCandidate":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/FormulaCandidate"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelStructureCandidateFormula":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/StructureCandidateFormula"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"PagedModelAlignedFeature":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/AlignedFeature"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"Info":{"required":["availableILPSolvers","supportedILPSolvers"],"type":"object","properties":{"nightSkyApiVersion":{"type":"string","description":"API version of the SIRIUS Nightsky API","nullable":true},"siriusVersion":{"type":"string","description":"Version of the SIRIUS application","nullable":true},"latestSiriusVersion":{"type":"string","description":"Latest available Version of the SIRIUS application","nullable":true},"latestSiriusLink":{"type":"string","description":"Link to the latest available Version of the SIRIUS application","nullable":true},"updateAvailable":{"type":"boolean","description":"true if newer SIRIUS version is available"},"siriusLibVersion":{"type":"string","description":"Version of the SIRIUS libraries","nullable":true},"fingerIdLibVersion":{"type":"string","description":"Version of the CSI:FingerID libraries","nullable":true},"chemDbVersion":{"type":"string","description":"Version of the Chemical Database available via SIRIUS web services","nullable":true},"fingerIdModelVersion":{"type":"string","description":"Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.","nullable":true},"fingerprintId":{"type":"string","description":"Version of the Molecular Fingerprint used by SIRIUS","nullable":true},"availableILPSolvers":{"type":"array","description":"Set of solvers that are configured correctly and can be loaded","items":{"type":"string","enum":["GUROBI","CPLEX","GLPK","CLP"]}},"supportedILPSolvers":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of ILP Solvers that are Supported and their version information"}}},"GuiInfo":{"type":"object","properties":{"projectId":{"type":"string","description":"The project this instance is running on"}}},"ConnectionCheck":{"required":["errors","licenseInfo"],"type":"object","properties":{"licenseInfo":{"$ref":"#/components/schemas/LicenseInfo"},"errors":{"type":"array","description":"List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors","items":{"$ref":"#/components/schemas/ConnectionError"}}}},"ConnectionError":{"required":["errorKlass","errorType","siriusErrorCode","siriusMessage"],"type":"object","properties":{"errorType":{"type":"string","enum":["WARNING","ERROR"]},"errorKlass":{"type":"string","enum":["UNKNOWN","INTERNET","LOGIN_SERVER","LICENSE_SERVER","TOKEN","LOGIN","LICENSE","TERMS","APP_SERVER"]},"siriusErrorCode":{"type":"integer","format":"int32"},"siriusMessage":{"type":"string"},"serverResponseErrorCode":{"type":"integer","format":"int32","nullable":true},"serverResponseErrorMessage":{"type":"string","nullable":true},"error":{"type":"boolean"},"warning":{"type":"boolean"}}},"LicenseInfo":{"type":"object","properties":{"userEmail":{"type":"string","description":"Email address of the user account this license information belongs to.","nullable":true},"userId":{"type":"string","description":"User ID (uid) of the user account this license information belongs to.","nullable":true},"subscription":{"$ref":"#/components/schemas/Subscription"},"consumables":{"$ref":"#/components/schemas/SubscriptionConsumables"},"terms":{"type":"array","nullable":true,"items":{"$ref":"#/components/schemas/Term"}}}},"SubscriptionConsumables":{"type":"object","properties":{"pendingJobs":{"type":"integer","format":"int32"},"countedCompounds":{"type":"integer","format":"int32"}},"nullable":true},"Term":{"type":"object","properties":{"name":{"type":"string"},"link":{"type":"string","format":"uri"}},"nullable":true},"WebServerNamespace":{"type":"object","properties":{"value":{"type":"string"}}},"SecurityContext":{"type":"object","properties":{"principal":{"type":"object","properties":{"name":{"type":"string"}}}}}}}} \ No newline at end of file +{ + "openapi": "3.0.1", + "info": { + "title": "SIRIUS Nightsky API", + "description": "REST API that provides the full functionality of SIRIUS and its web services as background service. It is intended as entry-point for scripting languages and software integration SDKs.This API is exposed by SIRIUS 6", + "version": "3.1" + }, + "servers": [ + { + "url": "http://localhost:8080", + "description": "Generated server url" + } + ], + "tags": [ + { + "name": "Info", + "description": "Status und Information" + }, + { + "name": "Feature Statistics", + "description": "[EXPERIMENTAL] This feature based API allows computing and accessing statistics for features (aligned over runs).All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Jobs", + "description": "Start, monitor and cancel background jobs." + }, + { + "name": "Compounds", + "description": "This compound based API allows to retrieve all AlignedFeatures that belong to the same compound (also known as a group of ion identities). It also provides for each AlignedFeature the corresponding annotation results (which are usually computed on a per-feature basis)" + }, + { + "name": "Gui", + "description": "GUI Control: Open, control and close SIRIUS Graphical User Interface (GUI) on specified projects." + }, + { + "name": "Projects", + "description": "Manage SIRIUS projects." + }, + { + "name": "Runs", + "description": "[EXPERIMENTAL] This API allows accessing LC/MS runs. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Compound Statistics", + "description": "[EXPERIMENTAL] This compound based API allows allows computing and accessing statistics for compounds (also known as a group of ion identities). All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Tags", + "description": "[EXPERIMENTAL] This API allows managing tags and tag based data groupings. All endpoints are experimental and not part of the stable API specification. These endpoints can change at any time, even in minor updates." + }, + { + "name": "Login and Account", + "description": "Perform signIn, signOut and signUp. Get tokens and account information." + }, + { + "name": "Actuator", + "description": "Monitor and interact", + "externalDocs": { + "description": "Spring Boot Actuator Web API Documentation", + "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" + } + }, + { + "name": "Searchable Databases", + "description": "Manage structure and spectral databases that can be used by various computational methods." + }, + { + "name": "Features", + "description": "This feature based API allows access features (aligned over runs) and there Annotations of a specified project-space. This is the entry point to access all raw annotation results an there summaries." + } + ], + "paths": { + "/api/projects/{projectId}": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get project space info by its projectId.", + "description": "Get project space info by its projectId.", + "operationId": "getProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier tof the project-space to be accessed.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "compatibilityInfo", + "sizeInformation" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "put": { + "tags": [ + "Projects" + ], + "summary": "Open an existing project-space and make it accessible via the given projectId.", + "description": "Open an existing project-space and make it accessible via the given projectId.", + "operationId": "openProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier that shall be used to access the opened project-space. Must consist only of [a-zA-Z0-9_-].", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pathToProject", + "in": "query", + "description": "local file path to open the project from. If NULL, project will be loaded by it projectId from default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", + "required": false, + "deprecated": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "compatibilityInfo", + "sizeInformation" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "post": { + "tags": [ + "Projects" + ], + "summary": "Create and open a new project-space at given location and make it accessible via the given projectId.", + "description": "Create and open a new project-space at given location and make it accessible via the given projectId.", + "operationId": "createProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier that shall be used to access the newly created project-space. Must consist only of [a-zA-Z0-9_-].", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pathToProject", + "in": "query", + "description": "local file path where the project will be created. If NULL, project will be stored by its projectId in default project location. DEPRECATED: This parameter relies on the local filesystem and will likely be removed in later versions of this API to allow for more flexible use cases.", + "required": false, + "deprecated": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "compatibilityInfo", + "sizeInformation" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Projects" + ], + "summary": "Close project-space and remove it from the application", + "description": "Close project-space and remove it from the application. The Project will NOT be deleted from disk.\n

\n ATTENTION: This will cancel and remove all jobs running on this Project before closing it.\n If there are many jobs, this might take some time.", + "operationId": "closeProject", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "unique name/identifier of the project-space to be closed.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compact", + "in": "query", + "description": "if true, compact project storage after closing. DEPRECATED: Compacting acts on the local filesystem and will likely be removed in a later version.", + "required": false, + "deprecated": true, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/tags": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get all tag definitions in the given project-space", + "description": "[EXPERIMENTAL] Get all tag definitions in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTags", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagType", + "in": "query", + "description": "scope of the tag (optional)", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag definitions.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Add tags to the project", + "description": "[EXPERIMENTAL] Add tags to the project. Tag names must not exist in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "createTags", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "the tag definitions to be created", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinitionImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the definitions of the tags that have been created", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{runId}": { + "put": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Add tags to a run in the project", + "description": "[EXPERIMENTAL] Add tags to a run in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "run to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/blanksubtract/compute": { + "put": { + "tags": [ + "Runs" + ], + "summary": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter", + "description": "**EXPERIMENTAL** Compute the fold changes that are required for the fold change filter.\n\n

This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.

", + "operationId": "computeFoldChangeForBlankSubtraction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "description": "request with lists of run IDs that are sample, blank, and control runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SampleTypeFoldChangeRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{compoundId}": { + "put": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Tags with the same name will be overwritten", + "description": "[EXPERIMENTAL] Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound (group of ion identities) to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchange/compute": { + "put": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", + "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "computeCompoundFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + }, + "put": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures.", + "description": "[EXPERIMENTAL] Add molecular structures (as SMILES) to the list of de novo structures. This starts a scoring job to incorporate the structures in the de novo results list.", + "operationId": "addDeNovoStructureCandidate", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "smiles", + "in": "query", + "description": "smiles", + "required": false, + "schema": { + "type": "string", + "default": "none" + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}": { + "put": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project", + "description": "[EXPERIMENTAL] Add tags to a feature (aligned over runs) in the project. Tags with the same name will be overwritten.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addTagsToAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "run to add tags to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "tags to add.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the tags that have been added", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchange/compute": { + "put": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Compute the fold change between two groups of runs", + "description": "[EXPERIMENTAL] Compute the fold change between two groups of runs.\n

\n The runs need to be tagged and grouped.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "computeAlignedFeatureFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to compute the fold change in.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right tag group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + }, + { + "name": "optFields", + "in": "query", + "description": "job opt fields.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/delete": { + "put": { + "tags": [ + "Features" + ], + "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "deleteAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/databases/{databaseId}": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "put": { + "tags": [ + "Searchable Databases" + ], + "operationId": "updateDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabaseParameters" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "post": { + "tags": [ + "Searchable Databases" + ], + "operationId": "createDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "pattern": "^[a-zA-Z0-9-_]+$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabaseParameters" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Searchable Databases" + ], + "operationId": "removeDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "delete", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/subscriptions/select-active": { + "put": { + "tags": [ + "Login and Account" + ], + "summary": "Select a subscription as active subscription to be used for computations.", + "description": "Select a subscription as active subscription to be used for computations.", + "operationId": "selectSubscription", + "parameters": [ + { + "name": "sid", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Account information with updated active subscription", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get List of all available jobs with information such as current state and progress (if available).", + "description": "Get List of all available jobs with information such as current state and progress (if available).", + "operationId": "getJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Jobs" + ], + "summary": "Start computation for given compounds and with given parameters.", + "description": "Start computation for given compounds and with given parameters.", + "operationId": "startJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "command", + "progress" + ] + } + } + ], + "requestBody": { + "description": "configuration of the job that will be submitted of the job to be returned", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "* Delete ALL jobs.", + "description": "* Delete ALL jobs. Specify how to behave for running jobs.", + "operationId": "deleteJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete jobs from", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cancelIfRunning", + "in": "query", + "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "awaitDeletion", + "in": "query", + "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/projects/{projectId}/jobs/from-config": { + "post": { + "tags": [ + "Jobs" + ], + "summary": "Start computation for given compounds and with parameters from a stored job-config.", + "description": "Start computation for given compounds and with parameters from a stored job-config.", + "operationId": "startJobFromConfig", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobConfigName", + "in": "query", + "description": "name if the config to be used", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recompute", + "in": "query", + "description": "enable or disable recompute. If null the stored value will be used.", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "command", + "progress" + ] + } + } + ], + "requestBody": { + "description": "List of alignedFeatureIds to be computed", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/preprocessed-data-files": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", + "description": "Import already preprocessed ms/ms data from various formats into the specified project\n Possible formats (ms, mgf, cef, msp)", + "operationId": "importPreprocessedData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreFormulas", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "allowMs1Only", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "files to import into project", + "items": { + "type": "string", + "format": "binary" + } + } + } + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportResult" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/preprocessed-data-files-job": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import ms/ms data from the given format into the specified project-space as background job.", + "description": "Import ms/ms data from the given format into the specified project-space as background job.\n Possible formats (ms, mgf, cef, msp)", + "operationId": "importPreprocessedDataAsJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreFormulas", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "allowMs1Only", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "items": { + "type": "string", + "format": "binary" + } + } + } + } + } + } + }, + "responses": { + "200": { + "description": "the import job.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/ms-data-files": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", + "description": "Import and Align full MS-Runs from various formats into the specified project\n Possible formats (mzML, mzXML)", + "operationId": "importMsRunData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles", + "parameters" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "Files to import into project.", + "items": { + "type": "string", + "format": "binary" + } + }, + "parameters": { + "$ref": "#/components/schemas/LcmsSubmissionParameters" + } + } + }, + "encoding": { + "parameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportResult" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/import/ms-data-files-job": { + "post": { + "tags": [ + "Projects" + ], + "summary": "Import and Align full MS-Runs from various formats into the specified project as background job.", + "description": "Import and Align full MS-Runs from various formats into the specified project as background job.\n Possible formats (mzML, mzXML)", + "operationId": "importMsRunDataAsJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "Set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles", + "parameters" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "Files to import into project.", + "items": { + "type": "string", + "format": "binary" + } + }, + "parameters": { + "$ref": "#/components/schemas/LcmsSubmissionParameters" + } + } + }, + "encoding": { + "parameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "the import job.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/gui": { + "post": { + "tags": [ + "Gui" + ], + "summary": "Open GUI instance on specified project-space and bring the GUI window to foreground.", + "description": "Open GUI instance on specified project-space and bring the GUI window to foreground.", + "operationId": "openGui", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "of project-space the GUI instance will connect to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "201": { + "description": "Created" + } + } + }, + "delete": { + "tags": [ + "Gui" + ], + "summary": "Close GUI instance of given project-space if available.", + "description": "Close GUI instance of given project-space if available.", + "operationId": "closeGui", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "if project-space the GUI instance is connected to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "closeProject", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/groups/{groupName}": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get tag group by name in the given project-space", + "description": "[EXPERIMENTAL] Get tag group by name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getGroupByName", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of the group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + }, + "post": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Group tags in the project", + "description": "[EXPERIMENTAL] Group tags in the project. The group name must not exist in the project.\n\n

\n See /tagged for filter syntax.\n

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addGroup", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of the new group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "filter query to create the group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "type of the group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tag group that was added", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space", + "description": "[EXPERIMENTAL] Delete tag groups with the given name from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteGroup", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "path", + "description": "name of group to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "List of all available compounds (group of ion identities) in the given project-space.", + "description": "List of all available compounds (group of ion identities) in the given project-space.", + "operationId": "getCompounds", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Compounds" + ], + "summary": "Import Compounds and its contained features.", + "description": "Import Compounds and its contained features. Compounds and Features must not exist in the project.\n Otherwise, they will exist twice.", + "operationId": "addCompounds", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "profile", + "in": "query", + "description": "profile describing the instrument used to measure the data. Used to merge spectra.", + "required": false, + "schema": { + "type": "string", + "nullable": true, + "enum": [ + "QTOF", + "ORBITRAP" + ] + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "description": "set of optional fields of the nested features to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "requestBody": { + "description": "the compound data to be imported", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CompoundImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the Compounds that have been imported with specified optional fields", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get all available features (aligned over runs) in the given project-space.", + "description": "Get all available features (aligned over runs) in the given project-space.", + "operationId": "getAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Features" + ], + "summary": "Import (aligned) features into the project.", + "description": "Import (aligned) features into the project. Features must not exist in the project.\n Otherwise, they will exist twice.", + "operationId": "addAlignedFeatures", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to import into.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "profile", + "in": "query", + "description": "profile describing the instrument used to measure the data. Used to merge spectra.", + "required": false, + "schema": { + "type": "string", + "nullable": true, + "enum": [ + "QTOF", + "ORBITRAP" + ] + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "requestBody": { + "description": "the feature data to be imported", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FeatureImport" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the Features that have been imported with specified optional fields", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + } + } + }, + "/api/job-configs/{name}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request job configuration with given name.", + "description": "Request job configuration with given name.", + "operationId": "getJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to return", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "{@link JobSubmission JobSubmission} for given name.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + }, + "post": { + "tags": [ + "Jobs" + ], + "summary": "Add new job configuration with given name.", + "description": "Add new job configuration with given name.", + "operationId": "saveJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to add", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "overrideExisting", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters in the return object", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "to add", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "StoredJobSubmission that contains the JobSubmission and the probably modified name of the config (to ensure path compatibility).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "Delete job configuration with given name.", + "description": "Delete job configuration with given name.", + "operationId": "deleteJobConfig", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "name of the job-config to delete", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/job-configs/get-command": { + "post": { + "tags": [ + "Jobs" + ], + "summary": "Get a CLI command for the given job configuration.", + "description": "Get a CLI command for the given job configuration.", + "operationId": "getCommand", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + }, + "/api/databases": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeWithErrors", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + }, + "post": { + "tags": [ + "Searchable Databases" + ], + "summary": "DEPRECATED: this endpoint is based on local file paths and will likely be replaced in future versions of this API.", + "operationId": "addDatabases", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + }, + "deprecated": true + } + }, + "/api/databases/{databaseId}/import/from-files": { + "post": { + "tags": [ + "Searchable Databases" + ], + "summary": "Start import of structure and spectra files into the specified database.", + "description": "Start import of structure and spectra files into the specified database.", + "operationId": "importIntoDatabase", + "parameters": [ + { + "name": "databaseId", + "in": "path", + "description": "database to import into", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "bufferSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1000 + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "inputFiles" + ], + "type": "object", + "properties": { + "inputFiles": { + "type": "array", + "description": "files to be imported", + "items": { + "type": "string", + "format": "binary" + } + }, + "bioTransformerParameters": { + "$ref": "#/components/schemas/BioTransformerParameters" + } + } + }, + "encoding": { + "bioTransformerParameters": { + "contentType": "application/json" + }, + "inputFiles": { + "contentType": "application/octet-stream" + } + } + } + } + }, + "responses": { + "200": { + "description": "Meta-Information of the affected database after the import has been performed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + }, + "/api/account/logout": { + "post": { + "tags": [ + "Login and Account" + ], + "summary": "Logout from SIRIUS web services.", + "description": "Logout from SIRIUS web services.", + "operationId": "logout", + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/login": { + "post": { + "tags": [ + "Login and Account" + ], + "summary": "Login into SIRIUS web services and activate default subscription if available.", + "description": "Login into SIRIUS web services and activate default subscription if available.", + "operationId": "login", + "parameters": [ + { + "name": "acceptTerms", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + }, + { + "name": "failWhenLoggedIn", + "in": "query", + "description": "if true request fails if an active login already exists.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeSubs", + "in": "query", + "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "used to log in.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountCredentials" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Basic information about the account that has been logged in and its subscriptions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/actuator/shutdown": { + "post": { + "tags": [ + "Actuator" + ], + "summary": "Actuator web endpoint 'shutdown'", + "operationId": "shutdown", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request" + } + } + } + }, + "/api/projects/{projectId}/tags/{tagName}": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get tag definition by its name in the given project-space", + "description": "[EXPERIMENTAL] Get tag definition by its name in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTag", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Tag definition.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space", + "description": "[EXPERIMENTAL] Delete tag definition with the given name from the specified project-space.\n

\n This will also remove all tags belonging to this definition from every tagged entity.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteTag", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag definition to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + }, + "patch": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Add a possible value to the tag definition in the project", + "description": "[EXPERIMENTAL] Add a possible value to the tag definition in the project.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "addPossibleValuesToTagDefinition", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to add to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "the tag definition to add the values to", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object" + } + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "the definitions of the tags that have been added", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagDefinition" + } + } + } + } + } + } + }, + "/api/projects": { + "get": { + "tags": [ + "Projects" + ], + "summary": "List opened project spaces.", + "description": "List opened project spaces.", + "operationId": "getProjects", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectInfo" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/{runId}": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space", + "description": "[EXPERIMENTAL] Get run with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "identifier of run to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "Run with tags (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Run" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{objectId}": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Run", + "description": "[EXPERIMENTAL] Get all tags associated with this Run", + "operationId": "getTagsForRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "RunId to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested object", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tagged": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get runs by tag", + "description": "[EXPERIMENTAL] Get runs by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunsByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get runs from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/page": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get all available runs in the given project-space", + "description": "[EXPERIMENTAL] Get all available runs in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunPageExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "Runs with tags (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/grouped": { + "get": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Get runs by tag group", + "description": "[EXPERIMENTAL] Get runs by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getRunsByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RunOptField" + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged runs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelRun" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/npc-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CANOPUS prediction vector definition for NPC classes", + "operationId": "getCanopusNpcData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/jobs/{jobId}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get job information and its current state and progress (if available).", + "description": "Get job information and its current state and progress (if available).", + "operationId": "getJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobId", + "in": "path", + "description": "of the job to be returned", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "progress" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Job" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Jobs" + ], + "summary": "Delete job.", + "description": "Delete job. Specify how to behave for running jobs.", + "operationId": "deleteJob", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete job from", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "jobId", + "in": "path", + "description": "of the job to be deleted", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cancelIfRunning", + "in": "query", + "description": "If true, job will be canceled if it is not finished. Otherwise,\n deletion will fail for running jobs or request will block until job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "awaitDeletion", + "in": "query", + "description": "If true, request will block until deletion succeeded or failed.\n If the job is still running the request will wait until the job has finished.", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + } + } + }, + "/api/projects/{projectId}/jobs/page": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Get Page of jobs with information such as current state and progress (if available).", + "description": "Get Page of jobs with information such as current state and progress (if available).", + "operationId": "getJobsPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to run jobs on", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "command", + "progress", + "affectedIds" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelJob" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/has-jobs": { + "get": { + "tags": [ + "Jobs" + ], + "operationId": "hasJobs", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeFinished", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/groups": { + "get": { + "tags": [ + "Tags" + ], + "summary": "[EXPERIMENTAL] Get all tag based groups in the given project-space", + "description": "[EXPERIMENTAL] Get all tag based groups in the given project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getGroups", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupType", + "in": "query", + "description": "type of the group", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Groups.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TagGroup" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/fingerid-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CSI:FingerID fingerprint (prediction vector) definition", + "operationId": "getFingerIdData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "Get compound (group of ion identities) with the given identifier from the specified project-space.", + "description": "Get compound (group of ion identities) with the given identifier from the specified project-space.", + "operationId": "getCompound", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "identifier of the compound (group of ion identities) to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Compound" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Compounds" + ], + "summary": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", + "description": "Delete compound (group of ion identities) with the given identifier (and the included features) from the\n specified project-space.", + "operationId": "deleteCompound", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "identifier of the compound to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}/traces": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns the traces of the given compound", + "description": "[EXPERIMENTAL] Returns the traces of the given compound.\n

\n A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound which intensities should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "featureId", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "Traces of the given compound.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/{compoundId}/quant-table-row": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given compound", + "description": "[EXPERIMENTAL] Returns a single quantification table row for the given compound.\n

\n The quantification table contains a quantification of the feature within all\n samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundQuantTableRowExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound which should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_HEIGHT", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{objectId}": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Compound", + "description": "[EXPERIMENTAL] Get all tags associated with this Compound", + "operationId": "getTagsForCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "CompoundId to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested Compound", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/tagged": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag", + "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundsByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get compounds (group of ion identities) from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged compounds (group of ion identities)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges/{objectId}": { + "get": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", + "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFoldChangesByCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "id of the object the fold changes are assigned to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "fold changes", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FoldChange" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges/stats-table": { + "get": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", + "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundFoldChangeTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "table of fold changes.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsTable" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/quant-table": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Returns the full quantification table of compounds", + "description": "[EXPERIMENTAL] Returns the full quantification table of compounds.\n

\n The quantification table contains a quantification of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.*", + "operationId": "getCompoundQuantTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_HEIGHT", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/page": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "Page of available compounds (group of ion identities) in the given project-space.", + "description": "Page of available compounds (group of ion identities) in the given project-space.", + "operationId": "getCompoundsPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [ + "none" + ] + } + }, + { + "name": "optFieldsFeatures", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Compounds with additional optional fields (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/compounds/grouped": { + "get": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group", + "description": "[EXPERIMENTAL] Get compounds (group of ion identities) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getCompoundsByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "consensusAnnotations", + "consensusAnnotationsDeNovo", + "customAnnotations", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged compounds (group of ion identities)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelCompound" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/cf-data": { + "get": { + "tags": [ + "Projects" + ], + "summary": "Get CANOPUS prediction vector definition for ClassyFire classes", + "operationId": "getCanopusClassyFireData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "charge", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/csv": { + "schema": { + "type": "string" + } + }, + "application/CSV": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Get feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "getAlignedFeature", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to access.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeature with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AlignedFeature" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Features" + ], + "summary": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "description": "Delete feature (aligned over runs) with the given identifier from the specified project-space.", + "operationId": "deleteAlignedFeature", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/traces": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns the traces of the given feature (alignedFeatureId).\n

\n Returns the traces of the given feature. A trace consists of m/z and intensity values over the retention\n time axis. All the returned traces are 'projected', which means they refer not to the original retention time axis,\n but to a recalibrated axis. This means the data points in the trace are not exactly the same as in the raw data.\n However, this also means that all traces can be directly compared against each other, as they all lie in the same\n retention time axis.\n By default, this method only returns traces of samples the aligned feature appears in. When includeAll is set,\n it also includes samples in which the same trace appears in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature which intensities should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "includeAll", + "in": "query", + "description": "when true, return all samples that belong to the same merged trace. when false, only return samples which contain the aligned feature.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Traces of the given feature.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of spectral library matches for the given 'alignedFeatureId'.", + "description": "List of spectral library matches for the given 'alignedFeatureId'.", + "operationId": "getSpectralLibraryMatches", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "referenceSpectrum" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library matches of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "Spectral library match for the given 'alignedFeatureId'.", + "description": "Spectral library match for the given 'alignedFeatureId'.", + "operationId": "getSpectralLibraryMatch", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "matchId", + "in": "path", + "description": "id of the library match to be returned.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "referenceSpectrum" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library match with requested mathcId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/{matchId}/annotated": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations", + "description": "[EXPERIMENTAL] Spectral library match for the given 'alignedFeatureId' with additional molecular formula and substructure annotations.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedSpectralLibraryMatchExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "matchId", + "in": "path", + "description": "id of the library match to be returned.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Spectral library match with requested mathcId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/summary": { + "get": { + "tags": [ + "Features" + ], + "summary": "Summarize matched reference spectra for the given 'alignedFeatureId'.", + "description": "Summarize matched reference spectra for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, summarizes only contains matches for the database compound with the given InChI key.", + "operationId": "getSpectralLibraryMatchesSummary", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "description": "min threshold of shared peaks.", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "description": "min spectral similarity threshold.", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "description": "2D inchi key of the compound in the structure database.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + } + ], + "responses": { + "200": { + "description": "Summary object with best match, number of spectral library matches, matched reference spectra and matched database compounds of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpectralLibraryMatchSummary" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/spectral-library-matches/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of spectral library matches for the given 'alignedFeatureId'.", + "description": "Page of spectral library matches for the given 'alignedFeatureId'.\n If a 'inchiKey' (2D) is provided, returns only matches for the database compound with the given InChI key.", + "operationId": "getSpectralLibraryMatchesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "minSharedPeaks", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "minSimilarity", + "in": "query", + "required": false, + "schema": { + "type": "number", + "format": "double", + "default": 0.2 + } + }, + { + "name": "inchiKey", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "optFields", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "referenceSpectrum" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "Spectral library matches of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelSpectralLibraryMatch" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quant-table-row": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns a single quantification table row for the given feature (alignedFeatureId).\n

\n The quantification table contains a quantity of the feature within all samples it is contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getQuantTableRowExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature which quantity should be read out", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type. Currently, only APEX_HEIGHT is supported, which is the intensity of the feature at its apex.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_HEIGHT", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "Quant table row for this feature", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/quality-report": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n ", + "description": "[EXPERIMENTAL] Returns data quality information for given feature (alignedFeatureId)\n

\n Get data quality information for feature (aligned over runs) with the given identifier from the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeatureQualityExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "identifier of feature (aligned over runs) to access.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatureQuality quality information of the respective feature.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AlignedFeatureQualityExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/ms-data": { + "get": { + "tags": [ + "Features" + ], + "summary": "Mass Spec data (input data) for the given 'alignedFeatureId' .", + "description": "Mass Spec data (input data) for the given 'alignedFeatureId' .", + "operationId": "getMsData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the Mass Spec data belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Mass Spec data of this feature (aligned over runs).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of FormulaResultContainers available for this feature with minimal information.", + "description": "List of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", + "operationId": "getFormulaCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "statistics", + "fragmentationTree", + "annotatedSpectrum", + "isotopePattern", + "lipidAnnotation", + "predictedFingerprint", + "compoundClasses", + "canopusPredictions" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "All FormulaCandidate of this feature with.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidate" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "FormulaResultContainers for the given 'formulaId' with minimal information.", + "description": "FormulaResultContainers for the given 'formulaId' with minimal information.\n Can be enriched with an optional results overview and formula candidate information.", + "operationId": "getFormulaCandidate", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "statistics", + "fragmentationTree", + "annotatedSpectrum", + "isotopePattern", + "lipidAnnotation", + "predictedFingerprint", + "compoundClasses", + "canopusPredictions" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "FormulaCandidate of this feature (aligned over runs) with.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FormulaCandidate" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-spectrum": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n ", + "description": "[EXPERIMENTAL] Returns a fragmentation spectrum annotated with fragments and losses for the given formulaId and inChIKey\n

\n Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the selected formula result\n These annotations are only available if a fragmentation tree is available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedSpectrumExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inchiKey", + "in": "path", + "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "spectrumIndex", + "in": "query", + "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": -1 + } + }, + { + "name": "searchPrepared", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragments and sub-structures.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/structures/{inchiKey}/annotated-msmsdata": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey", + "description": "[EXPERIMENTAL] Returns MS/MS Data annotated with fragments and losses for given formulaId and inChIKey.\n

\n Returns MS/MS Data (Merged MS/MS and list of measured MS/MS ) which are annotated with fragments and losses\n for the given formula result identifier and structure candidate inChIKey.\n These annotations are only available if a fragmentation tree and the structure candidate are available.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getStructureAnnotatedMsDataExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inchiKey", + "in": "path", + "description": "2d InChIKey of the structure candidate to be used to annotate the spectrum annotation", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragments and sub-structures.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedMsMsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/lipid-annotation": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns Lipid annotation (ElGordo) for the given formulaId", + "description": "Returns Lipid annotation (ElGordo) for the given formulaId.\n

\n ElGordo lipid annotation runs as part of the SIRIUS formula identification step.", + "operationId": "getLipidAnnotation", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "LipidAnnotation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LipidAnnotation" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/isotope-pattern": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns Isotope pattern information for given formulaId\n ", + "description": "Returns Isotope pattern information for given formulaId\n

\n Returns Isotope pattern information (simulated isotope pattern, measured isotope pattern, isotope pattern highlighting)\n for the given formula result identifier. This simulated isotope pattern is used to rank formula candidates (treeScore).", + "operationId": "getIsotopePatternAnnotation", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Isotope pattern information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IsotopePatternAnnotation" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fragtree": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n ", + "description": "Returns fragmentation tree (SIRIUS) for the given formula result identifier\n

\n This tree is used to rank formula candidates (treeScore).", + "operationId": "getFragTree", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Fragmentation Tree", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FragmentationTree" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/fingerprint": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n ", + "description": "Returns predicted fingerprint (CSI:FingerID) for the given formula result identifier (formulaId)\n

\n This fingerprint is used to perform structure database search and predict compound classes.", + "operationId": "getFingerprintPrediction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "probabilistic fingerprint predicted by CSI:FingerID", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "List of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesByFormula", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/denovo-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesByFormulaPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateScored" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", + "description": "List of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesByFormula", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/db-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.", + "description": "Page of CSI:FingerID structure database search candidates for the given 'formulaId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesByFormulaPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this formula candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateScored" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/canopus-prediction": { + "get": { + "tags": [ + "Features" + ], + "summary": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", + "description": "All predicted compound classes (CANOPUS) from ClassyFire and NPC and their probabilities,", + "operationId": "getCanopusPrediction", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Predicted compound classes", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CanopusPrediction" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/best-compound-classes": { + "get": { + "tags": [ + "Features" + ], + "summary": "Return Best matching compound classes for given formulaId", + "description": "Return Best matching compound classes for given formulaId.\n

\n Set of the highest scoring compound classes (CANOPUS) on each hierarchy level of the ClassyFire and NPC ontology,", + "operationId": "getBestMatchingCompoundClasses", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Best matching Predicted compound classes", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CompoundClasses" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-spectrum": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns a fragmentation spectrum (e", + "description": "Returns a fragmentation spectrum (e.g. Merged MS/MS) which is annotated with fragments and losses for the given formula result identifier\n

\n These annotations are only available if a fragmentation tree is available.", + "operationId": "getFormulaAnnotatedSpectrum", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "spectrumIndex", + "in": "query", + "description": "index of the spectrum to be annotated. Merged MS/MS will be used if spectrumIndex < 0 (default)", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": -1 + } + }, + { + "name": "searchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectrum annotated with fragment formulas and losses.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/{formulaId}/annotated-msmsdata": { + "get": { + "tags": [ + "Features" + ], + "summary": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId", + "description": "Returns MS/MS Spectrum annotated with fragments and losses for provided formulaId.\n

\n Returns MS/MS Spectrum (Merged MS/MS and measured MS/MS) which is annotated with fragments and losses\n for the given formula result identifier\n These annotations are only available if a fragmentation tree and the structure candidate are available.", + "operationId": "getFormulaAnnotatedMsMsData", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "formulaId", + "in": "path", + "description": "identifier of the requested formula result", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Fragmentation spectra annotated with fragment formulas and losses.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnnotatedMsMsData" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/formulas/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of FormulaResultContainers available for this feature with minimal information.", + "description": "Page of FormulaResultContainers available for this feature with minimal information.\n Can be enriched with an optional results overview.", + "operationId": "getFormulaCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the formula result belongs to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "statistics", + "fragmentationTree", + "annotatedSpectrum", + "isotopePattern", + "lipidAnnotation", + "predictedFingerprint", + "compoundClasses", + "canopusPredictions" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "All FormulaCandidate of this feature with.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelFormulaCandidate" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/denovo-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "description": "Page of de novo structure candidates (e.g. generated by MsNovelist) ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint.", + "operationId": "getDeNovoStructureCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures": { + "get": { + "tags": [ + "Features" + ], + "summary": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", + "description": "List of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidates", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/db-structures/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.", + "description": "Page of structure database search candidates ranked by CSI:FingerID score for the given 'alignedFeatureId' with minimal information.\n StructureCandidates can be enriched with molecular fingerprint, structure database links.", + "operationId": "getStructureCandidatesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) the structure candidates belong to.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "fingerprint", + "dbLinks", + "libraryMatches", + "structureSvg" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "StructureCandidate of this feature (aligned over runs) candidate with specified optional fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelStructureCandidateFormula" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/{alignedFeatureId}/adducts": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network", + "description": "[EXPERIMENTAL] Returns the adduct network for a given alignedFeatureId together with all merged traces contained in the network.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAdductNetworkWithMergedTracesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "one feature that is considered the main feature of the adduct network", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TraceSetExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{objectId}": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get all tags associated with this Object", + "description": "[EXPERIMENTAL] Get all tags associated with this Object", + "operationId": "getTagsForAlignedFeaturesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to get from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "object to get tags for.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "the tags of the requested object", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tagged": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag", + "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag.\n\n

Supported filter syntax

\n\n

The filter string must contain one or more clauses. A clause is prefíxed\n by a field name.\n

\n

\n Currently the only searchable fields are names of tags (tagName) followed by a clause that is valued for the value type of the tag (See TagDefinition).\n Tag name based field need to be prefixed with the namespace tags..\n Possible value types of tags are bool, integer, real, text, date, or time - tag value\n\n

The format of the date type is yyyy-MM-dd and of the time type is HH\\:mm\\:ss.

\n\n

A clause may be:

\n
    \n
  • a term: field name followed by a colon and the search term, e.g. tags.MyTagA:sample
  • \n
  • a phrase: field name followed by a colon and the search phrase in doublequotes, e.g. tags.MyTagA:"Some Text"
  • \n
  • a regular expression: field name followed by a colon and the regex in slashes, e.g. tags.MyTagA:/[mb]oat/
  • \n
  • a comparison: field name followed by a comparison operator and a value, e.g. tags.MyTagB<3
  • \n
  • a range: field name followed by a colon and an open (indiced by [ and ] ) or (semi-)closed range (indiced by { and }), e.g. tags.MyTagB:[* TO 3]
  • \n
\n\n

Clauses may be grouped with brackets ( and ) and / or joined with AND or OR (or && and || )

\n\n

Example

\n\n

The syntax allows to build complex filter queries such as:

\n\n

tags.city:"new york" AND tags.ATextTag:/[mb]oat/ AND tags.count:[1 TO *] OR tags.realNumberTag<=3.2 OR tags.MyDateTag:2024-01-01 OR tags.MyDateTag:[2023-10-01 TO 2023-12-24] OR tags.MyDateTag<2022-01-01 OR tags.time:12\\:00\\:00 OR tags.time:[12\\:00\\:00 TO 14\\:00\\:00] OR tags.time<10\\:00\\:00

\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeaturesByTagExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project space to get features (aligned over runs) from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "tag filter.", + "required": false, + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [] + } + } + ], + "responses": { + "200": { + "description": "tagged features (aligned over runs)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges/{objectId}": { + "get": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] List all fold changes that are associated with an object", + "description": "[EXPERIMENTAL] List all fold changes that are associated with an object.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFoldChangesByAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectId", + "in": "path", + "description": "id of the object the fold changes are assigned to.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "fold changes", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FoldChange" + } + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges/stats-table": { + "get": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Get table of all fold changes in the project space", + "description": "[EXPERIMENTAL] Get table of all fold changes in the project space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeatureFoldChangeTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "description": "aggregation type.", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "table of fold changes.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsTable" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/quant-table": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId)", + "description": "[EXPERIMENTAL] Returns the full quantification table for the given feature (alignedFeatureId).\n

\n Returns the full quantification table. The quantification table contains a quantities of the features within all\n runs they are contained in.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getFeatureQuantTableExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "quantification type.", + "required": false, + "schema": { + "type": "string", + "default": "APEX_HEIGHT", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "Quant table if akk feature in this project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/QuantTableExperimental" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/page": { + "get": { + "tags": [ + "Features" + ], + "summary": "Get all available features (aligned over runs) in the given project-space.", + "description": "Get all available features (aligned over runs) in the given project-space.", + "operationId": "getAlignedFeaturesPaged", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to read from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "msDataSearchPrepared", + "in": "query", + "description": "Returns all fragment spectra in a preprocessed form as used for fast\n Cosine/Modified Cosine computation. Gives you spectra compatible with SpectralLibraryMatch\n peak assignments and reference spectra.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "AlignedFeatures with additional annotations and MS/MS data (if specified).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/aligned-features/grouped": { + "get": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Get features (aligned over runs) by tag group", + "description": "[EXPERIMENTAL] Get features (aligned over runs) by tag group.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "getAlignedFeaturesByGroupExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupName", + "in": "query", + "description": "tag group name.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Zero-based page index (0..N)", + "required": false, + "schema": { + "minimum": 0, + "type": "integer", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "The size of the page to be returned", + "required": false, + "schema": { + "minimum": 1, + "type": "integer", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "optFields", + "in": "query", + "description": "set of optional fields to be included. Use 'none' only to override defaults.", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "msData", + "topAnnotationsSummary", + "topAnnotations", + "topAnnotationsDeNovo", + "computedTools", + "tags" + ] + }, + "default": [ + "none" + ] + } + } + ], + "responses": { + "200": { + "description": "tagged features (aligned over runs)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PagedModelAlignedFeature" + } + } + } + } + } + } + }, + "/api/job-configs": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request all available job configurations", + "description": "Request all available job configurations", + "operationId": "getJobConfigs", + "responses": { + "200": { + "description": "list of available {@link JobSubmission JobSubmission}s", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StoredJobSubmission" + } + } + } + } + } + } + } + }, + "/api/job-config-names": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "[DEPRECATED] Get all (non-default) job configuration names\n ", + "description": "[DEPRECATED] Get all (non-default) job configuration names\n

\n [DEPRECATED] Use /job-configs to get all configs with names. This endpoint is based on local file paths and will likely be removed in future versions of this API.", + "operationId": "getJobConfigNames", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "deprecated": true + } + }, + "/api/info": { + "get": { + "tags": [ + "Info" + ], + "operationId": "getInfo", + "parameters": [ + { + "name": "serverInfo", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "updateInfo", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Info" + } + } + } + } + } + } + }, + "/api/guis": { + "get": { + "tags": [ + "Gui" + ], + "summary": "Get list of currently running gui windows, managed by this SIRIUS instance.", + "description": "Get list of currently running gui windows, managed by this SIRIUS instance.\n Note this will not show any Clients that are connected from a separate process!", + "operationId": "getGuis", + "responses": { + "200": { + "description": "List of GUI windows that are currently managed by this SIRIUS instance.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GuiInfo" + } + } + } + } + } + } + } + }, + "/api/default-job-config": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Request default job configuration", + "description": "Request default job configuration", + "operationId": "getDefaultJobConfig", + "parameters": [ + { + "name": "includeConfigMap", + "in": "query", + "description": "if true, generic configmap with-defaults will be included", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveParametersToConfigMap", + "in": "query", + "description": "if true, object-based parameters will be converted to and added to the generic configMap parameters", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeCustomDbsForStructureSearch", + "in": "query", + "description": "if true, default database selection of structure db search\n spectral library search contains also all available custom DB.\n If No custom dbs are selected, spectral library search is disabled by default.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "{@link JobSubmission JobSubmission} with all parameters set to default values.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JobSubmission" + } + } + } + } + } + } + }, + "/api/databases/included": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getIncludedDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + } + }, + "/api/databases/custom": { + "get": { + "tags": [ + "Searchable Databases" + ], + "operationId": "getCustomDatabases", + "parameters": [ + { + "name": "includeStats", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeWithErrors", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SearchableDatabase" + } + } + } + } + } + } + } + }, + "/api/connection-status": { + "get": { + "tags": [ + "Info" + ], + "operationId": "getConnectionCheck", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionCheck" + } + } + } + } + } + } + }, + "/api/account/subscriptions": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get available subscriptions of the account currently logged in.", + "description": "Get available subscriptions of the account currently logged in. Fails if not logged in.", + "operationId": "getSubscriptions", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Subscription" + } + } + } + } + } + } + } + }, + "/api/account/signUp": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Open SignUp window in system browser and return signUp link.", + "description": "Open SignUp window in system browser and return signUp link.", + "operationId": "signUp", + "responses": { + "200": { + "description": "OK", + "content": { + "text/plain;charset=UTF-8": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/account/signUpURL": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get SignUp URL (For signUp via web browser)", + "description": "Get SignUp URL (For signUp via web browser)", + "operationId": "getSignUpURL", + "responses": { + "200": { + "description": "OK", + "content": { + "text/plain;charset=UTF-8": { + "schema": { + "type": "string" + } + } + } + } + } + } + }, + "/api/account/openPortal": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Open User portal in browser.", + "description": "Open User portal in browser. If user is logged in SIRIUS tries to transfer the login state to the browser.", + "operationId": "openPortal", + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/account/isLoggedIn": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Check if a user is logged in.", + "description": "Check if a user is logged in.", + "operationId": "isLoggedIn", + "responses": { + "200": { + "description": "true if the user is logged in", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + } + } + } + }, + "/api/account/": { + "get": { + "tags": [ + "Login and Account" + ], + "summary": "Get information about the account currently logged in.", + "description": "Get information about the account currently logged in. Fails if not logged in.", + "operationId": "getAccountInfo", + "parameters": [ + { + "name": "includeSubs", + "in": "query", + "description": "include available and active subscriptions in {@link AccountInfo AccountInfo}.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "Basic information about the account that has been logged in and its subscriptions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountInfo" + } + } + } + } + } + } + }, + "/actuator/health": { + "get": { + "tags": [ + "Actuator" + ], + "summary": "Actuator web endpoint 'health'", + "operationId": "health", + "responses": { + "200": { + "description": "OK", + "content": { + "application/vnd.spring-boot.actuator.v3+json": { + "schema": { + "type": "object" + } + }, + "application/vnd.spring-boot.actuator.v2+json": { + "schema": { + "type": "object" + } + }, + "application/json": { + "schema": { + "type": "object" + } + } + } + } + } + } + }, + "/api/projects/{projectId}/runs/tags/{runId}/{tagName}": { + "delete": { + "tags": [ + "Runs" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the run with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromRunExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "runId", + "in": "path", + "description": "run to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/tags/{compoundId}/{tagName}": { + "delete": { + "tags": [ + "Compounds" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the compound (group of ion identities) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromCompoundExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "compoundId", + "in": "path", + "description": "compound (group of ion identities) to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/compounds/statistics/foldchanges": { + "delete": { + "tags": [ + "Compound Statistics" + ], + "summary": "[EXPERIMENTAL] Delete fold changes", + "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteCompoundFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/tags/{alignedFeatureId}/{tagName}": { + "delete": { + "tags": [ + "Features" + ], + "summary": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space", + "description": "[EXPERIMENTAL] Delete tag with the given name from the feature (aligned over runs) with the specified ID in the specified project-space.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "removeTagFromAlignedFeatureExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alignedFeatureId", + "in": "path", + "description": "feature (aligned over runs) to delete tag from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagName", + "in": "path", + "description": "name of the tag to delete.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/api/projects/{projectId}/aligned-features/statistics/foldchanges": { + "delete": { + "tags": [ + "Feature Statistics" + ], + "summary": "[EXPERIMENTAL] Delete fold changes", + "description": "[EXPERIMENTAL] Delete fold changes.\n

\n [EXPERIMENTAL] This endpoint is experimental and not part of the stable API specification. This endpoint can change at any time, even in minor updates.", + "operationId": "deleteAlignedFeatureFoldChangesExperimental", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "project-space to delete from.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "leftGroupName", + "in": "query", + "description": "name of the left group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rightGroupName", + "in": "query", + "description": "name of the right group.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "aggregation", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "AVG", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + } + }, + { + "name": "quantification", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "APEX_INTENSITY", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + } + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + } + }, + "components": { + "schemas": { + "ProjectChangeEvent": { + "type": "object", + "properties": { + "eventType": { + "type": "string", + "enum": [ + "PROJECT_OPENED", + "PROJECT_MOVED", + "PROJECT_CLOSED", + "FEATURE_CREATED", + "FEATURE_UPDATED", + "FEATURE_DELETED", + "RESULT_CREATED", + "RESULT_UPDATED", + "RESULT_DELETED" + ] + }, + "projectId": { + "type": "string" + }, + "compoundId": { + "type": "string", + "nullable": true + }, + "featuredId": { + "type": "string", + "nullable": true + }, + "formulaId": { + "type": "string", + "nullable": true + }, + "structureInChIKey": { + "type": "string", + "nullable": true + } + } + }, + "DataImportEvent": { + "required": [ + "importedCompoundIds", + "importedFeatureIds" + ], + "type": "object", + "properties": { + "importJobId": { + "type": "string", + "nullable": true + }, + "importedCompoundIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "importedFeatureIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "BackgroundComputationsStateEvent": { + "required": [ + "affectedJobs", + "numberOfFinishedJobs", + "numberOfJobs", + "numberOfRunningJobs" + ], + "type": "object", + "properties": { + "affectedJobs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + }, + "numberOfJobs": { + "type": "integer", + "format": "int32" + }, + "numberOfRunningJobs": { + "type": "integer", + "format": "int32" + }, + "numberOfFinishedJobs": { + "type": "integer", + "format": "int32" + } + } + }, + "ProjectInfo": { + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "a user selected unique name of the project for easy access." + }, + "location": { + "type": "string", + "description": "storage location of the project." + }, + "description": { + "type": "string", + "description": "Description of this project.", + "nullable": true + }, + "type": { + "type": "string", + "description": "Type of this project.\n NULL if project type has not yet been specified by importing data.", + "nullable": true, + "enum": [ + "UNIMPORTED", + "DIRECT_IMPORT", + "PEAKLISTS", + "ALIGNED_RUNS", + "UNALIGNED_RUNS" + ] + }, + "compatible": { + "type": "boolean", + "description": "Indicates whether computed results (e.g. fingerprints, compounds classes) are compatible with the backend.\n If true project is up-to-date and there are no restrictions regarding usage.\n If false project is incompatible and therefore \"read only\" until the incompatible results have been removed. See updateProject endpoint for further information\n If NULL the information has not been requested.", + "nullable": true + }, + "numOfFeatures": { + "type": "integer", + "description": "Number of features (aligned over runs) in this project. If NULL, information has not been requested (See OptField 'sizeInformation').", + "format": "int32", + "nullable": true + }, + "numOfCompounds": { + "type": "integer", + "description": "Number of compounds (group of ion identities) in this project. If NULL, Information has not been requested (See OptField 'sizeInformation') or might be unavailable for this project type.", + "format": "int32", + "nullable": true + }, + "numOfBytes": { + "type": "integer", + "description": "Size in Bytes this project consumes on disk If NULL, Information has not been requested (See OptField 'sizeInformation').", + "format": "int64", + "nullable": true + } + } + }, + "TagDefinitionImport": { + "required": [ + "tagName", + "valueType" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of this tag defined by this definition (key)" + }, + "description": { + "type": "string", + "description": "A human-readable description about the purpose of this tag.", + "nullable": true + }, + "tagType": { + "type": "string", + "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", + "nullable": true + }, + "valueType": { + "type": "string", + "enum": [ + "NONE", + "BOOLEAN", + "INTEGER", + "REAL", + "TEXT", + "DATE", + "TIME" + ] + }, + "possibleValues": { + "type": "array", + "nullable": true, + "items": { + "type": "object", + "nullable": true + } + }, + "minValue": { + "type": "object", + "nullable": true + }, + "maxValue": { + "type": "object", + "nullable": true + } + } + }, + "TagDefinition": { + "required": [ + "tagName", + "valueType" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of this tag defined by this definition (key)" + }, + "description": { + "type": "string", + "description": "A human-readable description about the purpose of this tag.", + "nullable": true + }, + "tagType": { + "type": "string", + "description": "A simple string based identifier to specify the type/scope/purpose of this tag.", + "nullable": true + }, + "valueType": { + "type": "string", + "enum": [ + "NONE", + "BOOLEAN", + "INTEGER", + "REAL", + "TEXT", + "DATE", + "TIME" + ] + }, + "possibleValues": { + "type": "array", + "nullable": true, + "items": { + "type": "object", + "nullable": true + } + }, + "minValue": { + "type": "object", + "nullable": true + }, + "maxValue": { + "type": "object", + "nullable": true + }, + "editable": { + "type": "boolean" + } + } + }, + "Tag": { + "required": [ + "tagName" + ], + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Name of the tag as defined by the corresponding TagDefinition\n Links tag object to their definition." + }, + "value": { + "type": "object", + "description": "Optional value of the tag.\n

\n Generic value of the tag as defined by the corresponding TagDefinition.\n Can be Integer, Double, Boolean and String, whereas String values can represent Text, Date (yyyy-MM-dd) or Time (HH:mm:ss).", + "nullable": true + } + } + }, + "SampleTypeFoldChangeRequest": { + "type": "object", + "properties": { + "sampleRunIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "blankRunIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "controlRunIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Job": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier to access the job via the API" + }, + "command": { + "type": "string", + "description": "Command string of the executed Task", + "nullable": true + }, + "progress": { + "$ref": "#/components/schemas/JobProgress" + }, + "affectedCompoundIds": { + "type": "array", + "description": "List of compoundIds that are affected by this job.\n This lis will also contain compoundIds where not all features of the compound are affected by the job.\n If this job is creating compounds (e.g. data import jobs) this value will be NULL until the jobs has finished", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "affectedAlignedFeatureIds": { + "type": "array", + "description": "List of alignedFeatureIds that are affected by this job.\n If this job is creating features (e.g. data import jobs) this value will be NULL until the jobs has finished", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "jobEffect": { + "type": "string", + "description": "Effect this job has. The affected ids are added, removed or modified.\n Null if job does not affect features/compounds\n Not available/null if affected Ids are not requested", + "nullable": true, + "enum": [ + "IMPORT", + "COMPUTATION", + "DELETION" + ] + } + }, + "description": "Identifier created by the SIRIUS Nightsky API for a newly created Job.\n Object can be enriched with Job status/progress information ({@link JobProgress JobProgress}) and/or Job command information.\n This is a return value of the API. So nullable values can also be NOT_REQUIRED to allow for easy removal." + }, + "JobProgress": { + "type": "object", + "properties": { + "indeterminate": { + "type": "boolean", + "description": "Is the progress indeterminate or not", + "nullable": true + }, + "state": { + "type": "string", + "description": "Current state of the Jobs in the SIRIUS internal Job scheduler\n\n WAITING: Waiting for submission to ExecutorService (e.g. due to dependent jobs)\n READY: Ready for submission but not yet enqueued for submission to ExecutorService.\n QUEUED: Enqueued for submission to ExecutorService.\n SUBMITTED: Submitted and waiting to be executed.\n RUNNING: Job is running.\n CANCELED: Jobs is finished due to cancellation by user or dependent jobs.\n FAILED: Job is finished but failed.\n DONE: Job finished successfully.", + "enum": [ + "WAITING", + "READY", + "QUEUED", + "SUBMITTED", + "RUNNING", + "CANCELED", + "FAILED", + "DONE" + ] + }, + "currentProgress": { + "type": "integer", + "description": "Current progress value of the job.", + "format": "int64", + "nullable": true + }, + "maxProgress": { + "type": "integer", + "description": "Progress value to reach (might also change during execution)", + "format": "int64", + "nullable": true + }, + "message": { + "type": "string", + "description": "Progress information and warnings.", + "nullable": true + }, + "errorMessage": { + "type": "string", + "description": "Error message if the job did not finish successfully failed.", + "nullable": true + } + }, + "description": "Progress information of a computation job that has already been submitted to SIRIUS.\n if currentProgress == maxProgress job is finished and should change to state done soon.\n if a job is DONE all results can be accessed via the Project-Spaces api.", + "nullable": true + }, + "BasicSpectrum": { + "required": [ + "cosineQuery", + "peaks" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Optional Displayable name of this spectrum.", + "nullable": true + }, + "msLevel": { + "type": "integer", + "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", + "format": "int32", + "nullable": true + }, + "collisionEnergy": { + "type": "string", + "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", + "nullable": true + }, + "instrument": { + "type": "string", + "description": "Instrument information.", + "nullable": true + }, + "precursorMz": { + "type": "number", + "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", + "format": "double", + "nullable": true + }, + "scanNumber": { + "type": "integer", + "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", + "format": "int32", + "nullable": true + }, + "cosineQuery": { + "type": "boolean", + "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", + "default": false + }, + "precursorPeak": { + "$ref": "#/components/schemas/SimplePeak" + }, + "peaks": { + "type": "array", + "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", + "items": { + "$ref": "#/components/schemas/SimplePeak" + } + }, + "absIntensityFactor": { + "type": "number", + "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", + "format": "double", + "nullable": true, + "deprecated": true + }, + "maxNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to MAX norm.", + "format": "double", + "nullable": true + }, + "sumNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to SUM norm.", + "format": "double", + "nullable": true + }, + "l2NormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", + "format": "double", + "nullable": true + }, + "firstPeakNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "BinaryFingerprint": { + "type": "object", + "properties": { + "bitsSet": { + "type": "array", + "description": "Array that contains all RELATIVE indices (masked FP) of bits that are set (are 1)", + "items": { + "type": "integer", + "format": "int32" + } + }, + "length": { + "type": "integer", + "description": "Size of the fingerprint (masked fp), e.g. to reconstruct the binary array from the array of set bits", + "format": "int32" + } + }, + "nullable": true + }, + "DBLink": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "nullable": true + }, + "PeakPair": { + "required": [ + "queryPeak", + "referencePeak" + ], + "type": "object", + "properties": { + "queryPeak": { + "type": "integer", + "format": "int32" + }, + "referencePeak": { + "type": "integer", + "format": "int32" + } + } + }, + "SimplePeak": { + "type": "object", + "properties": { + "mz": { + "type": "number", + "format": "double" + }, + "intensity": { + "type": "number", + "format": "double" + } + } + }, + "SpectralLibraryMatch": { + "required": [ + "inchiKey", + "querySpectrumIndex", + "similarity", + "uuid" + ], + "type": "object", + "properties": { + "specMatchId": { + "type": "string" + }, + "rank": { + "type": "integer", + "format": "int32" + }, + "similarity": { + "type": "number", + "description": "Similarity between query and reference spectrum", + "format": "float" + }, + "sharedPeaks": { + "type": "integer", + "description": "Number of shared/matched peaks", + "format": "int32" + }, + "sharedPeakMapping": { + "type": "array", + "description": "List of paired/matched peak indices.\n\n Maps indices of peaks from the query spectrum (mass sorted)\n to indices of matched peaks in the reference spectrum (mass sorted)", + "items": { + "$ref": "#/components/schemas/PeakPair" + } + }, + "querySpectrumIndex": { + "type": "integer", + "format": "int32" + }, + "dbName": { + "type": "string" + }, + "dbId": { + "type": "string" + }, + "uuid": { + "type": "integer", + "format": "int64" + }, + "splash": { + "type": "string" + }, + "molecularFormula": { + "type": "string" + }, + "adduct": { + "type": "string" + }, + "exactMass": { + "type": "number", + "format": "double" + }, + "smiles": { + "type": "string" + }, + "type": { + "type": "string", + "default": "IDENTITY", + "enum": [ + "IDENTITY", + "ANALOG" + ] + }, + "inchiKey": { + "type": "string" + }, + "referenceSpectrumType": { + "type": "string", + "default": "SPECTRUM", + "enum": [ + "SPECTRUM", + "MERGED_SPECTRUM" + ] + }, + "referenceSpectrum": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "querySpectrumType": { + "type": "string", + "enum": [ + "SPECTRUM", + "MERGED_SPECTRUM" + ] + } + }, + "nullable": true + }, + "StructureCandidateFormula": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + }, + "rank": { + "type": "integer", + "description": "the overall rank of this candidate among all candidates of this feature", + "format": "int32" + }, + "csiScore": { + "type": "number", + "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", + "format": "double" + }, + "tanimotoSimilarity": { + "type": "number", + "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", + "format": "double", + "nullable": true + }, + "mcesDistToTopHit": { + "type": "number", + "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", + "format": "double", + "nullable": true + }, + "fingerprint": { + "$ref": "#/components/schemas/BinaryFingerprint" + }, + "molecularFormula": { + "type": "string", + "description": "Molecular formula of this candidate" + }, + "adduct": { + "type": "string", + "description": "Adduct of this candidate" + }, + "formulaId": { + "type": "string", + "description": "Id of the corresponding Formula candidate" + } + } + }, + "SearchableDatabaseParameters": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "display name of the database\n Should be short", + "nullable": true + }, + "location": { + "type": "string", + "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", + "nullable": true + }, + "matchRtOfReferenceSpectra": { + "type": "boolean", + "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", + "nullable": true, + "default": false + } + } + }, + "SearchableDatabase": { + "required": [ + "customDb", + "databaseId", + "searchable", + "updateNeeded" + ], + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "display name of the database\n Should be short", + "nullable": true + }, + "location": { + "type": "string", + "description": "Storage location of user database\n Might be NULL for non-user databases or if default location is used.", + "nullable": true + }, + "matchRtOfReferenceSpectra": { + "type": "boolean", + "description": "Indicates whether this database shall be used to use retention time information for library matching.\n Typically used for in-house spectral libraries that have been measured on", + "nullable": true, + "default": false + }, + "databaseId": { + "type": "string", + "description": "A unique identifier or name of the database.\n Should only contain file path and url save characters\n For user databases this is usually the file name." + }, + "customDb": { + "type": "boolean", + "description": "Indicates whether the database is a user managed custom database or if it is a\n database that is included in SIRIUS which cannot be modified." + }, + "searchable": { + "type": "boolean", + "description": "True when this database can be used as a search parameter.\n False if the database is just an additional filter that can be applied after search." + }, + "dbDate": { + "type": "string", + "description": "Date on which the data was imported / database was created.", + "nullable": true + }, + "dbVersion": { + "type": "integer", + "description": "database schema version", + "format": "int32", + "nullable": true + }, + "updateNeeded": { + "type": "boolean", + "description": "If true the database version is outdated and the database needs to be updated or re-imported before it can be used." + }, + "numberOfStructures": { + "type": "integer", + "description": "Number of unique compounds available in this database.", + "format": "int64", + "nullable": true + }, + "numberOfFormulas": { + "type": "integer", + "description": "Number of different molecular formulas available in this database.", + "format": "int64", + "nullable": true + }, + "numberOfReferenceSpectra": { + "type": "integer", + "description": "Number of reference spectra available in this database", + "format": "int64", + "nullable": true + }, + "errorMessage": { + "type": "string", + "description": "Error message if the database could not be loaded", + "nullable": true + } + } + }, + "AccountInfo": { + "type": "object", + "properties": { + "userID": { + "type": "string" + }, + "username": { + "type": "string", + "nullable": true + }, + "userEmail": { + "type": "string" + }, + "gravatarURL": { + "type": "string", + "nullable": true + }, + "subscriptions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Subscription" + } + }, + "activeSubscriptionId": { + "type": "string", + "nullable": true + } + } + }, + "AllowedFeatures": { + "type": "object", + "properties": { + "cli": { + "type": "boolean" + }, + "api": { + "type": "boolean" + }, + "deNovo": { + "type": "boolean" + }, + "importMSRuns": { + "type": "boolean" + }, + "importPeakLists": { + "type": "boolean" + }, + "importCef": { + "type": "boolean" + } + } + }, + "Subscription": { + "type": "object", + "properties": { + "sid": { + "type": "string", + "description": "Unique identifier of this subscription" + }, + "subscriberId": { + "type": "string", + "description": "ID of the owner of the subscription.\n This can be the ID of any SubscriptionOwner (e.g. Group or User)\n depending on the level on which a subscription should be is valid." + }, + "subscriberName": { + "type": "string", + "description": "Optional name of the owner of this subscription", + "nullable": true + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "startDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "countQueries": { + "type": "boolean", + "nullable": true + }, + "instanceLimit": { + "type": "integer", + "description": "Limit of instances (features) that can be computed with this subscription", + "format": "int32", + "nullable": true + }, + "instanceHashRecordingTime": { + "type": "integer", + "description": "Hash is used to allow recomputing identical data without increasing counted instances (features).\n The recording time is the amount of time an instance is memorized is", + "format": "int32", + "nullable": true + }, + "maxQueriesPerInstance": { + "type": "integer", + "description": "Maximum number of queries (e.g. prediction) that can be performed\n for one instance before it is counted another time.", + "format": "int32", + "nullable": true + }, + "maxUserAccounts": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "serviceUrl": { + "type": "string" + }, + "description": { + "type": "string", + "nullable": true + }, + "name": { + "type": "string", + "nullable": true + }, + "tos": { + "type": "string", + "nullable": true + }, + "pp": { + "type": "string", + "nullable": true + }, + "allowedFeatures": { + "$ref": "#/components/schemas/AllowedFeatures" + } + } + }, + "Canopus": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + } + }, + "description": "User/developer friendly parameter subset for the CANOPUS tool\n CANOPUS is parameter free, so this Object is just a flag that canopus should be executed.\n Needs results from FingerprintPrediction Tool", + "nullable": true + }, + "FingerprintPrediction": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "useScoreThreshold": { + "type": "boolean", + "description": "If true, an adaptive soft threshold will be applied to only compute Fingerprints for promising formula candidates\n Enabling is highly recommended.", + "nullable": true + }, + "alwaysPredictHighRefMatches": { + "type": "boolean", + "description": "If true Fingerprint/Classes/Structures will be predicted for formulas candidates with\n reference spectrum similarity > Sirius.minReferenceMatchScoreToInject will be predicted no matter which\n score threshold rules apply.\n If NULL default value will be used.", + "nullable": true + } + }, + "description": "User/developer friendly parameter subset for the CSI:FingerID Fingerprint tool\n Needs results from Formula/SIRIUS Tool", + "nullable": true + }, + "JobSubmission": { + "type": "object", + "properties": { + "compoundIds": { + "type": "array", + "description": "Compounds that should be the input for this Job\n Will be converted to the respective alignedFeatureIds for computation.\n\n At least one compoundId or alignedFeatureId needs to be specified.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "alignedFeatureIds": { + "type": "array", + "description": "Features (aligned over runs) that should be the input for this Job\n\n At least one compoundId or alignedFeatureId needs to be specified.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "fallbackAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Fallback adducts are considered if the auto detection did not find any indication for an ion mode.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "enforcedAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Enforced adducts that are always considered.\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "detectableAdducts": { + "type": "array", + "description": "Describes how to deal with Adducts: Detectable adducts which are only considered if there is an indication in the MS1 scan (e.g. correct mass delta).\n Pos Examples: [M+H]+,[M]+,[M+K]+,[M+Na]+,[M+H-H2O]+,[M+Na2-H]+,[M+2K-H]+,[M+NH4]+,[M+H3O]+,[M+MeOH+H]+,[M+ACN+H]+,[M+2ACN+H]+,[M+IPA+H]+,[M+ACN+Na]+,[M+DMSO+H]+\n Neg Examples: [M-H]-,[M]-,[M+K-2H]-,[M+Cl]-,[M-H2O-H]-,[M+Na-2H]-,M+FA-H]-,[M+Br]-,[M+HAc-H]-,[M+TFA-H]-,[M+ACN-H]-", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "recompute": { + "type": "boolean", + "description": "Indicate if already existing result for a tool to be executed should be overwritten or not.", + "nullable": true + }, + "spectraSearchParams": { + "$ref": "#/components/schemas/SpectralLibrarySearch" + }, + "formulaIdParams": { + "$ref": "#/components/schemas/Sirius" + }, + "zodiacParams": { + "$ref": "#/components/schemas/Zodiac" + }, + "fingerprintPredictionParams": { + "$ref": "#/components/schemas/FingerprintPrediction" + }, + "canopusParams": { + "$ref": "#/components/schemas/Canopus" + }, + "structureDbSearchParams": { + "$ref": "#/components/schemas/StructureDbSearch" + }, + "msNovelistParams": { + "$ref": "#/components/schemas/MsNovelist" + }, + "configMap": { + "type": "object", + "additionalProperties": { + "type": "string", + "nullable": true + }, + "description": "As an alternative to the object based parameters, this map allows to store key value pairs\n of ALL SIRIUS parameters. All possible parameters can be retrieved from SIRIUS via the respective endpoint.", + "nullable": true + } + }, + "description": "Object to submit a job to be executed by SIRIUS" + }, + "MsNovelist": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "numberOfCandidateToPredict": { + "type": "integer", + "description": "Number of structure candidates to be predicted by MsNovelist.\n Max Value 128. Values > 128 will be set to 128.\n Actual number of returned candidate might be lower du to duplicates being created by MsNovelist.", + "format": "int32", + "nullable": true + } + }, + "nullable": true + }, + "Sirius": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "profile": { + "type": "string", + "description": "Instrument specific profile for internal algorithms\n Just select what comes closest to the instrument that was used for measuring the data.", + "nullable": true, + "enum": [ + "QTOF", + "ORBITRAP" + ] + }, + "numberOfCandidates": { + "type": "integer", + "description": "Number of formula candidates to keep as result list (Formula Candidates).", + "format": "int32", + "nullable": true + }, + "numberOfCandidatesPerIonization": { + "type": "integer", + "description": "Use this parameter if you want to force SIRIUS to report at least\n NumberOfCandidatesPerIonization results per ionization.\n if <= 0, this parameter will have no effect and just the top\n NumberOfCandidates results will be reported.", + "format": "int32", + "nullable": true + }, + "massAccuracyMS2ppm": { + "type": "number", + "description": "Maximum allowed mass deviation. Only molecular formulas within this mass window are considered.", + "format": "double", + "nullable": true + }, + "isotopeMs2Settings": { + "type": "string", + "description": "Specify how isotope patterns in MS/MS should be handled.\n

\n FILTER: When filtering is enabled, molecular formulas are excluded if their\n theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.\n

\n SCORE: Use them for SCORING. To use this the instrument should produce clear MS/MS isotope patterns\n

\n IGNORE: Ignore that there might be isotope patterns in MS/MS", + "nullable": true, + "enum": [ + "IGNORE", + "FILTER", + "SCORE" + ] + }, + "filterByIsotopePattern": { + "type": "boolean", + "description": "When filtering is enabled, molecular formulas are excluded if their theoretical isotope pattern does not match the theoretical one, even if their MS/MS pattern has high score.", + "nullable": true + }, + "enforceElGordoFormula": { + "type": "boolean", + "description": "El Gordo may predict that an MS/MS spectrum is a lipid spectrum. If enabled, the corresponding molecular formula will be enforeced as molecular formula candidate.", + "nullable": true + }, + "performBottomUpSearch": { + "type": "boolean", + "description": "If true, molecular formula generation via bottom up search is enabled.", + "nullable": true + }, + "performDenovoBelowMz": { + "type": "number", + "description": "Specifies the m/z below which de novo molecular formula generation is enabled. Set to 0 to disable de novo molecular formula generation.", + "format": "double", + "nullable": true + }, + "formulaSearchDBs": { + "type": "array", + "description": "List Structure database to extract molecular formulas from to reduce formula search space.\n SIRIUS is quite good at de novo formula annotation, so only enable if you have a good reason.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "applyFormulaConstraintsToDBAndBottomUpSearch": { + "type": "boolean", + "description": "By default, the formula (element) constraints are only applied to de novo molecular formula generation.\n If true, the constraints are as well applied to database search and bottom up search.", + "nullable": true + }, + "enforcedFormulaConstraints": { + "type": "string", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Enforced: Enforced elements are always considered", + "nullable": true + }, + "fallbackFormulaConstraints": { + "type": "string", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Fallback: Fallback elements are used, if the auto-detection fails (e.g. no isotope pattern available)", + "nullable": true + }, + "detectableElements": { + "type": "array", + "description": "These configurations hold the information how to autodetect elements based on the given formula constraints.\n Note: If the compound is already assigned to a specific molecular formula, this annotation is ignored.\n

\n Detectable: Detectable elements are added to the chemical alphabet, if there are indications for them (e.g. in isotope pattern)", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "ilpTimeout": { + "$ref": "#/components/schemas/Timeout" + }, + "useHeuristic": { + "$ref": "#/components/schemas/UseHeuristic" + }, + "injectSpecLibMatchFormulas": { + "type": "boolean", + "description": "If true formula candidates that belong to spectral library matches above a certain threshold will\n we inject/preserved for further analyses no matter which score they have or which filter is applied", + "nullable": true + }, + "minScoreToInjectSpecLibMatch": { + "type": "number", + "description": "Similarity Threshold to inject formula candidates no matter which score/rank they have or which filter settings are applied.\n If threshold >= 0 formulas candidates with reference spectrum similarity above the threshold will be injected.", + "format": "double", + "nullable": true + }, + "minPeaksToInjectSpecLibMatch": { + "type": "integer", + "description": "Matching peaks threshold to inject formula candidates no matter which score they have or which filter is applied.", + "format": "int32", + "nullable": true + } + }, + "description": "User/developer friendly parameter subset for the Formula/SIRIUS tool\n Can use results from Spectral library search tool.", + "nullable": true + }, + "SpectralLibrarySearch": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "spectraSearchDBs": { + "type": "array", + "description": "Structure Databases with Reference spectra to search in.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "precursorDeviationPpm": { + "type": "number", + "description": "Maximum allowed mass deviation in ppm for matching the precursor. If not specified, the same value as for the peaks is used.", + "format": "double", + "nullable": true + }, + "minSimilarity": { + "type": "number", + "description": "Minimal spectral similarity of a spectral match to be considered a hit.", + "format": "float", + "nullable": true + }, + "minNumOfPeaks": { + "type": "integer", + "description": "Minimal number of matching peaks of a spectral match to be considered a hit.", + "format": "int32", + "nullable": true + }, + "enableAnalogueSearch": { + "type": "boolean", + "description": "Enable analogue search in addition to the identity spectral library search" + }, + "minSimilarityAnalogue": { + "type": "number", + "description": "Minimal spectral similarity of a spectral match to be considered an analogue hit.", + "format": "float", + "nullable": true + }, + "minNumOfPeaksAnalogue": { + "type": "integer", + "description": "Minimal number of matching peaks of a spectral match to be considered an analogue hit.", + "format": "int32", + "nullable": true + }, + "scoring": { + "type": "string", + "description": "NO LONGER SUPPORTED (IGNORED)\n Specify scoring method to match spectra\n INTENSITY: Intensity weighted. Each peak matches at most one peak in the other spectrum.\n GAUSSIAN: Treat peaks as (un-normalized) Gaussians and score overlapping areas of PDFs. Each peak might score against multiple peaks in the other spectrum.\n MODIFIED_COSINE: This algorithm requires that there is at most one pair of peaks (u,v) where the m/z of u and v are within the allowed mass tolerance. To be used for analog search with different precursor masses.", + "nullable": true, + "deprecated": true, + "enum": [ + "INTENSITY", + "GAUSSIAN", + "MODIFIED_COSINE", + "FAST_COSINE" + ] + }, + "peakDeviationPpm": { + "type": "number", + "description": "NO LONGER SUPPORTED (IGNORED)\n Maximum allowed mass deviation in ppm for matching peaks.", + "format": "double", + "nullable": true, + "deprecated": true + } + }, + "description": "User/developer friendly parameter subset for the Spectral library search tool.", + "nullable": true + }, + "StructureDbSearch": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "structureSearchDBs": { + "type": "array", + "description": "Structure databases to search in, If expansive search is enabled this DB selection will be expanded to PubChem\n if not high confidence hit was found in the selected databases.\n

\n Defaults to BIO + Custom Databases. Possible values are available to Database API.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "tagStructuresWithLipidClass": { + "type": "boolean", + "description": "Candidates matching the lipid class estimated by El Gordo will be tagged.\n The lipid class will only be available if El Gordo predicts that the MS/MS is a lipid spectrum.\n If this parameter is set to 'false' El Gordo will still be executed and e.g. improve the fragmentation\n tree, but the matching structure candidates will not be tagged if they match lipid class.", + "nullable": true + }, + "expansiveSearchConfidenceMode": { + "type": "string", + "description": "Expansive search mode.\n Expansive search will expand the search space to whole PubChem in case no hit with reasonable confidence was\n found in one of the specified databases (structureSearchDBs).\n

\n Possible Values\n OFF - No expansive search is performed\n EXACT - Use confidence score in exact mode: Only molecular structures identical to the true structure should count as correct identification.\n APPROXIMATE - Use confidence score in approximate mode: Molecular structures hits that are close to the true structure should count as correct identification.", + "nullable": true, + "enum": [ + "OFF", + "EXACT", + "APPROXIMATE" + ] + } + }, + "description": "User/developer friendly parameter subset for the CSI:FingerID structure db search tool.\n Needs results from FingerprintPrediction and Canopus Tool.\n Non-Null parameters in this Object well override their equivalent value in the config map.", + "nullable": true + }, + "Timeout": { + "type": "object", + "properties": { + "numberOfSecondsPerDecomposition": { + "type": "integer", + "format": "int32" + }, + "numberOfSecondsPerInstance": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "UseHeuristic": { + "type": "object", + "properties": { + "useHeuristicAboveMz": { + "type": "integer", + "format": "int32" + }, + "useOnlyHeuristicAboveMz": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "Zodiac": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "tags whether the tool is enabled" + }, + "consideredCandidatesAt300Mz": { + "type": "integer", + "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds below 300 m/z.", + "format": "int32", + "nullable": true + }, + "consideredCandidatesAt800Mz": { + "type": "integer", + "description": "Maximum number of candidate molecular formulas (fragmentation trees computed by SIRIUS) per compound which are considered by ZODIAC for compounds above 800 m/z.", + "format": "int32", + "nullable": true + }, + "runInTwoSteps": { + "type": "boolean", + "description": "As default ZODIAC runs a 2-step approach. First running 'good quality compounds' only, and afterwards including the remaining.", + "nullable": true + }, + "edgeFilterThresholds": { + "$ref": "#/components/schemas/ZodiacEdgeFilterThresholds" + }, + "gibbsSamplerParameters": { + "$ref": "#/components/schemas/ZodiacEpochs" + }, + "librarySearchAnchors": { + "$ref": "#/components/schemas/ZodiacLibraryScoring" + }, + "analogueSearchAnchors": { + "$ref": "#/components/schemas/ZodiacAnalogueNodes" + } + }, + "description": "User/developer friendly parameter subset for the ZODIAC tool (Network base molecular formula re-ranking).\n Needs results from Formula/SIRIUS Tool", + "nullable": true + }, + "ZodiacAnalogueNodes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "minSimilarity": { + "type": "number", + "format": "double" + }, + "minSharedPeaks": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacEdgeFilterThresholds": { + "type": "object", + "properties": { + "thresholdFilter": { + "type": "number", + "format": "double" + }, + "minLocalCandidates": { + "type": "integer", + "format": "int32" + }, + "minLocalConnections": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacEpochs": { + "type": "object", + "properties": { + "iterations": { + "type": "integer", + "format": "int32" + }, + "burnInPeriod": { + "type": "integer", + "format": "int32" + }, + "numberOfMarkovChains": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "ZodiacLibraryScoring": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "minSimilarity": { + "type": "number", + "format": "double" + } + }, + "nullable": true + }, + "ImportResult": { + "required": [ + "affectedAlignedFeatureIds", + "affectedCompoundIds" + ], + "type": "object", + "properties": { + "affectedCompoundIds": { + "type": "array", + "description": "List of compoundIds that have been imported.", + "items": { + "type": "string" + } + }, + "affectedAlignedFeatureIds": { + "type": "array", + "description": "List of alignedFeatureIds that have been imported..", + "items": { + "type": "string" + } + } + } + }, + "Deviation": { + "type": "object", + "properties": { + "ppm": { + "type": "number", + "format": "double" + }, + "absolute": { + "type": "number", + "format": "double" + } + }, + "nullable": true + }, + "LcmsSubmissionParameters": { + "type": "object", + "properties": { + "alignLCMSRuns": { + "type": "boolean", + "description": "Specifies whether LC/MS runs should be aligned", + "default": true + }, + "noiseIntensity": { + "type": "number", + "description": "Noise level under which all peaks are considered to be likely noise. A peak has to be at least 3x noise level\n to be picked as feature. Peaks with MS/MS are still picked even though they might be below noise level.\n If not specified, the noise intensity is detected automatically from data. We recommend to NOT specify\n this parameter, as the automated detection is usually sufficient.", + "format": "double", + "default": -1 + }, + "traceMaxMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "alignMaxMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "alignMaxRetentionTimeDeviation": { + "type": "number", + "description": "Maximal allowed retention time error in seconds for aligning features. If not specified, this parameter is estimated from data.", + "format": "double", + "default": -1 + }, + "minSNR": { + "type": "number", + "description": "Minimum ratio between peak height and noise intensity for detecting features. By default, this value is 3. Features with good MS/MS are always picked independent of their intensity. For picking very low intensive features we recommend a min-snr of 2, but this will increase runtime and storage memory", + "format": "double", + "default": 3 + } + } + }, + "TagGroup": { + "type": "object", + "properties": { + "groupName": { + "type": "string", + "description": "Name of this Grouping query." + }, + "luceneQuery": { + "type": "string", + "description": "Query used to group the entities in lucene format." + }, + "groupType": { + "type": "string" + } + } + }, + "CompoundImport": { + "required": [ + "features" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Some (optional) human-readable name", + "nullable": true + }, + "features": { + "type": "array", + "description": "The features this compound consists of.", + "items": { + "$ref": "#/components/schemas/FeatureImport" + } + } + } + }, + "FeatureImport": { + "required": [ + "charge", + "ionMass" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "nullable": true + }, + "externalFeatureId": { + "type": "string", + "description": "Externally provided FeatureId (by some preprocessing tool). This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source.", + "nullable": true + }, + "ionMass": { + "type": "number", + "format": "double" + }, + "charge": { + "type": "integer", + "format": "int32" + }, + "detectedAdducts": { + "uniqueItems": true, + "type": "array", + "description": "Detected adducts of this feature. Can be NULL or empty if no adducts are known.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "rtStartSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtApexSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "dataQuality": { + "type": "string", + "description": "A optional feature quality flag that can be used to filter features to be shown in the gui or to be considered for further analysis.", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "mergedMs1": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "ms1Spectra": { + "type": "array", + "description": "List of MS1Spectra belonging to this feature. These spectra will be merged an only a representative\n mergedMs1 spectrum will be stored in SIRIUS. At least one of these spectra should contain the\n isotope pattern of the precursor ion.\n Note: Will be ignored if 'mergedMs1' is given.", + "nullable": true, + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "ms2Spectra": { + "type": "array", + "description": "List of MS/MS spectra that belong to this feature.", + "nullable": true, + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + } + }, + "description": "Represents an (aligned) feature to be imported into a SIRIUS project.\n At least one of the Mass Spec data sources (e.g. mergedMs1, ms1Spectra, ms2Spectra) needs to be given.\n Otherwise, the import will fail." + }, + "AlignedFeature": { + "required": [ + "charge", + "detectedAdducts" + ], + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string" + }, + "compoundId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "externalFeatureId": { + "type": "string", + "description": "Externally provided FeatureId (e.g. by some preprocessing tool).\n This FeatureId is NOT used by SIRIUS but is stored to ease mapping information back to the source." + }, + "ionMass": { + "type": "number", + "format": "double" + }, + "charge": { + "type": "integer", + "description": "Ion mode (charge) this feature has been measured in.", + "format": "int32" + }, + "detectedAdducts": { + "uniqueItems": true, + "type": "array", + "description": "Adducts of this feature that have been detected during preprocessing.", + "items": { + "type": "string" + } + }, + "rtStartSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "rtApexSeconds": { + "type": "number", + "format": "double", + "nullable": true + }, + "quality": { + "type": "string", + "description": "Quality of this feature.", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "hasMs1": { + "type": "boolean", + "description": "If true, the feature has at lease one MS1 spectrum" + }, + "hasMsMs": { + "type": "boolean", + "description": "If true, the feature has at lease one MS/MS spectrum" + }, + "msData": { + "$ref": "#/components/schemas/MsData" + }, + "topAnnotations": { + "$ref": "#/components/schemas/FeatureAnnotations" + }, + "topAnnotationsDeNovo": { + "$ref": "#/components/schemas/FeatureAnnotations" + }, + "computing": { + "type": "boolean", + "description": "Write lock for this feature. If the feature is locked no write operations are possible.\n True if any computation is modifying this feature or its results" + }, + "computedTools": { + "$ref": "#/components/schemas/ComputedSubtools" + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + }, + "description": "The AlignedFeature contains the ID of a feature (aligned over runs) together with some read-only information\n that might be displayed in some summary view." + }, + "AnnotatedPeak": { + "type": "object", + "properties": { + "mz": { + "type": "number", + "format": "double" + }, + "intensity": { + "type": "number", + "format": "double" + }, + "peakAnnotation": { + "$ref": "#/components/schemas/PeakAnnotation" + } + } + }, + "AnnotatedSpectrum": { + "required": [ + "cosineQuery", + "peaks" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Optional Displayable name of this spectrum.", + "nullable": true + }, + "msLevel": { + "type": "integer", + "description": "MS level of the measured spectrum.\n Artificial spectra with no msLevel (e.g. Simulated Isotope patterns) use null or zero", + "format": "int32", + "nullable": true + }, + "collisionEnergy": { + "type": "string", + "description": "Collision energy used for MS/MS spectra\n Null for spectra where collision energy is not applicable", + "nullable": true + }, + "instrument": { + "type": "string", + "description": "Instrument information.", + "nullable": true + }, + "precursorMz": { + "type": "number", + "description": "Precursor m/z of the MS/MS spectrum\n Null for spectra where precursor m/z is not applicable", + "format": "double", + "nullable": true + }, + "scanNumber": { + "type": "integer", + "description": "Scan number of the spectrum.\n Might be null for artificial spectra with no scan number (e.g. Simulated Isotope patterns or merged spectra)", + "format": "int32", + "nullable": true + }, + "cosineQuery": { + "type": "boolean", + "description": "True if spectrum is in cosine query normalized format.\n Such spectrum is compatible with SpectralLibraryMatch peak assignments to reference spectra.", + "default": false + }, + "precursorPeak": { + "$ref": "#/components/schemas/SimplePeak" + }, + "peaks": { + "type": "array", + "description": "The peaks of this spectrum which might contain additional annotations such as molecular formulas.", + "items": { + "$ref": "#/components/schemas/AnnotatedPeak" + } + }, + "absIntensityFactor": { + "type": "number", + "description": "Factor to convert relative intensities to absolute intensities.\n Might be null or 1 for spectra where absolute intensities are not available (E.g. artificial or merged spectra)\n

\n DEPRECATED: Spectra are always returned with raw intensities.\n Use provided normalization factors to normalize on the fly.", + "format": "double", + "nullable": true, + "deprecated": true + }, + "maxNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to MAX norm.", + "format": "double", + "nullable": true + }, + "sumNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to SUM norm.", + "format": "double", + "nullable": true + }, + "l2NormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to L2 (Euclidean) norm.", + "format": "double", + "nullable": true + }, + "firstPeakNormFactor": { + "type": "number", + "description": "Factor to convert absolute intensities to normalize intensities by first peak intensity.", + "format": "double", + "nullable": true + }, + "spectrumAnnotation": { + "$ref": "#/components/schemas/SpectrumAnnotation" + } + }, + "description": "Spectrum model with peak annotations based on the fragmentation tree and Epimetheus substructure annotations.\n Molecular formula and adduct of the spectrum are identical to the ones of the corresponding molecular formula candidate and FragmentationTree.\n Fragment molecular formulas and adducts correspond to the FragmentationTree's FragmentNodes", + "nullable": true + }, + "CanopusPrediction": { + "type": "object", + "properties": { + "classyFireClasses": { + "type": "array", + "description": "All predicted ClassyFire classes", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + }, + "npcClasses": { + "type": "array", + "description": "All predicted NPC classes", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + } + }, + "description": "Container class that holds the CANOPUS compound class predictions for alle predictable compound classes.\n This is the full CANOPUS result.", + "nullable": true + }, + "Compound": { + "type": "object", + "properties": { + "compoundId": { + "type": "string", + "description": "uid of this compound Entity" + }, + "name": { + "type": "string", + "description": "Some (optional) human-readable name", + "nullable": true + }, + "rtStartSeconds": { + "type": "number", + "description": "The merged/consensus retention time start (earliest rt) of this compound", + "format": "double", + "nullable": true + }, + "rtEndSeconds": { + "type": "number", + "description": "The merged/consensus retention time end (latest rt) of this compound", + "format": "double", + "nullable": true + }, + "neutralMass": { + "type": "number", + "description": "Neutral mass of this compound. Ion masse minus the mass of the assigned adduct of each feature of\n this compound should result in the same neutral mass", + "format": "double", + "nullable": true + }, + "features": { + "type": "array", + "description": "List of aligned features (adducts) that belong to the same (this) compound", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + }, + "consensusAnnotations": { + "$ref": "#/components/schemas/ConsensusAnnotationsCSI" + }, + "consensusAnnotationsDeNovo": { + "$ref": "#/components/schemas/ConsensusAnnotationsDeNovo" + }, + "customAnnotations": { + "$ref": "#/components/schemas/ConsensusAnnotationsCSI" + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + } + }, + "CompoundClass": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Specifies the classification ontology the CompoundClass belongs to.", + "nullable": true, + "enum": [ + "ClassyFire", + "NPC" + ] + }, + "level": { + "type": "string", + "description": "Name of the level this compound class belongs to", + "nullable": true + }, + "levelIndex": { + "type": "integer", + "description": "Index of the level this compound class belongs to", + "format": "int32", + "nullable": true + }, + "name": { + "type": "string", + "description": "Name of the compound class.", + "nullable": true + }, + "description": { + "type": "string", + "description": "Description of the compound class.", + "nullable": true + }, + "id": { + "type": "integer", + "description": "Unique id of the class. Might be undefined for certain classification ontologies.", + "format": "int32", + "nullable": true + }, + "probability": { + "type": "number", + "description": "prediction probability", + "format": "double" + }, + "index": { + "type": "integer", + "description": "Absolute index of this property in the predicted vector/embedding", + "format": "int32" + }, + "parentId": { + "type": "integer", + "description": "Unique id of the parent class. Might be undefined for certain classification ontologies.", + "format": "int32", + "nullable": true + }, + "parentName": { + "type": "string", + "description": "Name of the parent compound class.", + "nullable": true + } + }, + "description": "Predicted compound class with name, probability and id if available.\n (ClassyFire and NPC). This can be seen as the set of classes a feature most likely belongs to", + "nullable": true + }, + "CompoundClasses": { + "type": "object", + "properties": { + "npcPathway": { + "$ref": "#/components/schemas/CompoundClass" + }, + "npcSuperclass": { + "$ref": "#/components/schemas/CompoundClass" + }, + "npcClass": { + "$ref": "#/components/schemas/CompoundClass" + }, + "classyFireLineage": { + "type": "array", + "description": "Most likely ClassyFire lineage from ordered from least specific to most specific class\n classyFireLineage.get(classyFireLineage.size() - 1) gives the most specific ClassyFire compound class annotation", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + }, + "classyFireAlternatives": { + "type": "array", + "description": "Alternative ClassyFire classes with high probability that do not fit into the linage", + "nullable": true, + "items": { + "$ref": "#/components/schemas/CompoundClass" + } + } + }, + "description": "Container class that holds the most likely compound class for different levels of each ontology for a\n certain Compound/Feature/FormulaCandidate/PredictedFingerprint.", + "nullable": true + }, + "ComputedSubtools": { + "type": "object", + "properties": { + "librarySearch": { + "type": "boolean" + }, + "formulaSearch": { + "type": "boolean" + }, + "zodiac": { + "type": "boolean" + }, + "fingerprint": { + "type": "boolean" + }, + "canopus": { + "type": "boolean" + }, + "structureSearch": { + "type": "boolean" + }, + "deNovoSearch": { + "type": "boolean" + } + }, + "description": "Specifies which tools have been executed for this feature. Can be used to estimate which results can be expected. Null if it was not requested und non-null otherwise.", + "nullable": true + }, + "ConsensusAnnotationsCSI": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", + "nullable": true + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "supportingFeatureIds": { + "type": "array", + "description": "FeatureIds where the topAnnotation supports this annotation.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "selectionCriterion": { + "type": "string", + "description": "Null if this is a custom selection", + "nullable": true, + "enum": [ + "MAJORITY_STRUCTURE", + "CONFIDENCE_STRUCTURE", + "SINGLETON_STRUCTURE", + "MAJORITY_FORMULA", + "TOP_FORMULA", + "SINGLETON_FORMULA" + ] + }, + "csiFingerIdStructure": { + "$ref": "#/components/schemas/StructureCandidate" + }, + "confidenceExactMatch": { + "type": "number", + "description": "Confidence value that represents the certainty that reported consensus structure is exactly the measured one\n If multiple features support this consensus structure the maximum confidence is reported", + "format": "double", + "nullable": true + }, + "confidenceApproxMatch": { + "type": "number", + "description": "Confidence value that represents the certainty that the exact consensus structure or a very similar\n structure (e.g. measured by Maximum Common Edge Subgraph Distance) is the measured one.\n If multiple features support this consensus structure the maximum confidence is reported", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "ConsensusAnnotationsDeNovo": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula of the consensus annotation\n Might be null if no consensus formula is available.", + "nullable": true + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "supportingFeatureIds": { + "type": "array", + "description": "FeatureIds where the topAnnotation supports this annotation.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "selectionCriterion": { + "type": "string", + "description": "Criterion that was used to select the consensus annotation.", + "nullable": true, + "enum": [ + "MAJORITY_FORMULA", + "TOP_FORMULA", + "SINGLETON_FORMULA" + ] + } + }, + "nullable": true + }, + "FeatureAnnotations": { + "type": "object", + "properties": { + "formulaAnnotation": { + "$ref": "#/components/schemas/FormulaCandidate" + }, + "structureAnnotation": { + "$ref": "#/components/schemas/StructureCandidateScored" + }, + "compoundClassAnnotation": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "confidenceExactMatch": { + "type": "number", + "description": "Confidence Score that represents the confidence whether the top hit is correct.", + "format": "double", + "nullable": true + }, + "confidenceApproxMatch": { + "type": "number", + "description": "Confidence Score that represents the confidence whether the top hit or a very similar hit (estimated by MCES distance) is correct.", + "format": "double", + "nullable": true + }, + "expansiveSearchState": { + "type": "string", + "description": "Result that shows if structure annotation was expanded by using PubChem as fallback and if so, which confidence mode was used (as per input paramter)", + "nullable": true, + "enum": [ + "OFF", + "EXACT", + "APPROXIMATE" + ] + }, + "specifiedDatabases": { + "type": "array", + "description": "List of databases that have been specified by for structure db search. Null if no structure db search has been performed.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "expandedDatabases": { + "type": "array", + "description": "List of databases that have been used to expand search space during expansive search. Null if no structure db search has been performed.", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + } + }, + "description": "Summary of the results of a feature (aligned over runs). Can be added to a AlignedFeature.\n The different annotation fields within this summary object are null if the corresponding\n feature does not contain the represented results. If fields are non-null\n the corresponding result has been computed but might still be empty.", + "nullable": true + }, + "FormulaCandidate": { + "type": "object", + "properties": { + "formulaId": { + "type": "string", + "description": "Unique identifier of this formula candidate" + }, + "molecularFormula": { + "type": "string", + "description": "molecular formula of this formula candidate" + }, + "adduct": { + "type": "string", + "description": "Adduct of this formula candidate" + }, + "rank": { + "type": "integer", + "format": "int32" + }, + "siriusScoreNormalized": { + "type": "number", + "description": "Normalized Sirius Score of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "siriusScore": { + "type": "number", + "description": "Sirius Score (isotope + tree score) of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "isotopeScore": { + "type": "number", + "format": "double", + "nullable": true + }, + "treeScore": { + "type": "number", + "format": "double", + "nullable": true + }, + "zodiacScore": { + "type": "number", + "description": "Zodiac Score of the formula candidate.\n If NULL result is not available", + "format": "double", + "nullable": true + }, + "numOfExplainedPeaks": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "numOfExplainablePeaks": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "totalExplainedIntensity": { + "type": "number", + "format": "double", + "nullable": true + }, + "medianMassDeviation": { + "$ref": "#/components/schemas/Deviation" + }, + "fragmentationTree": { + "$ref": "#/components/schemas/FragmentationTree" + }, + "annotatedSpectrum": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + }, + "isotopePatternAnnotation": { + "$ref": "#/components/schemas/IsotopePatternAnnotation" + }, + "lipidAnnotation": { + "$ref": "#/components/schemas/LipidAnnotation" + }, + "predictedFingerprint": { + "type": "array", + "description": "Probabilistic molecular fingerprint predicted by CSI:FingerID", + "nullable": true, + "items": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "compoundClasses": { + "$ref": "#/components/schemas/CompoundClasses" + }, + "canopusPrediction": { + "$ref": "#/components/schemas/CanopusPrediction" + } + }, + "description": "Molecular formula candidate that holds a unique identifier (molecular formula + adduct).\n It can be extended with optional scoring metrics and the raw results\n such as fragmentation trees and simulated isotope pattern.", + "nullable": true + }, + "FragmentNode": { + "type": "object", + "properties": { + "fragmentId": { + "type": "integer", + "format": "int32" + }, + "molecularFormula": { + "type": "string", + "description": "neutral molecular formula of the fragment without adduct", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "This combines the ionization plus adduct of the fragment. In contrast to the {@link FragmentationTree FragmentationTree}s adduct,\n this adduct may not include any in-source loss.", + "nullable": true + }, + "massDeviationDa": { + "type": "number", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "format": "double", + "nullable": true + }, + "score": { + "type": "number", + "format": "double", + "nullable": true + }, + "intensity": { + "type": "number", + "format": "double", + "nullable": true + }, + "mz": { + "type": "number", + "format": "double", + "nullable": true + } + } + }, + "FragmentationTree": { + "type": "object", + "properties": { + "fragments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FragmentNode" + } + }, + "losses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LossEdge" + } + }, + "treeScore": { + "type": "number", + "format": "double" + }, + "molecularFormula": { + "type": "string" + }, + "adduct": { + "type": "string" + } + }, + "description": "Simple and easy serializable fragmentation tree model with annotated fragments/nodes abd losses/edges\n Root fragment has index 0;\n Molecular formula and adduct are identical to the ones of the corresponding molecular formula candidate and SpectrumAnnotation", + "nullable": true + }, + "IsotopePatternAnnotation": { + "type": "object", + "properties": { + "isotopePattern": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "simulatedPattern": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "nullable": true + }, + "LipidAnnotation": { + "type": "object", + "properties": { + "lipidSpecies": { + "type": "string", + "description": "Predicted lipid species in LIPID MAPS notation.\n NULL if not classified as lipid.", + "nullable": true + }, + "lipidMapsId": { + "type": "string", + "description": "LIPID MAPS id of the predicted lipid class.", + "nullable": true + }, + "lipidClassName": { + "type": "string", + "description": "Human-readable name of the predicted lipid class.", + "nullable": true + }, + "hypotheticalStructure": { + "type": "string", + "description": "Hypothetical molecular structure of the predicted lipid species as SMILES.\n NULL if hypothetical structure not available.", + "nullable": true + }, + "chainsUnknown": { + "type": "boolean", + "description": "True of the formula composition of the chains could not be determined from the MS/MS.", + "nullable": true + } + }, + "nullable": true + }, + "LossEdge": { + "type": "object", + "properties": { + "sourceFragmentIdx": { + "type": "integer", + "format": "int32" + }, + "targetFragmentIdx": { + "type": "integer", + "format": "int32" + }, + "molecularFormula": { + "type": "string" + }, + "score": { + "type": "number", + "format": "double" + } + } + }, + "MsData": { + "type": "object", + "properties": { + "isotopePattern": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "mergedMs1": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "mergedMs2": { + "$ref": "#/components/schemas/BasicSpectrum" + }, + "ms1Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + }, + "ms2Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BasicSpectrum" + } + } + }, + "description": "The MsData wraps all spectral input data belonging to a (aligned) feature. All spectra fields are optional.\n However, at least one Spectrum field needs to be set to create a valid MsData Object.\n The different types of spectra fields can be extended to adapt to other MassSpec measurement techniques not covered yet.\n

\n Each Feature can have:\n - One extracted isotope pattern (optional)\n - One merged MS/MS spectrum (optional)\n - One merged MS spectrum (optional)\n - many MS/MS spectra (optional)\n - many MS spectra (optional)\n

\n Each non-merged spectrum has an index which can be used to access the spectrum.\n

\n In the future we might add some additional information like chromatographic peak or something similar", + "nullable": true + }, + "ParentPeak": { + "required": [ + "lossFormula", + "parentFragmentId", + "parentIdx" + ], + "type": "object", + "properties": { + "parentIdx": { + "type": "integer", + "description": "Index to the parent peak connected by this loss in this particular spectrum", + "format": "int32" + }, + "parentFragmentId": { + "type": "integer", + "description": "Identifier of the parent fragment connected via this loss. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", + "format": "int32" + }, + "lossFormula": { + "type": "string", + "description": "Molecular formula of the neutral loss that connects these two peaks." + } + }, + "description": "Link from annotated fragment peak to its parent fragment peak connected by their neutral loss.", + "nullable": true + }, + "PeakAnnotation": { + "required": [ + "fragmentId" + ], + "type": "object", + "properties": { + "fragmentId": { + "type": "integer", + "description": "Identifier of the peak/fragment. Can be used to map fragments and peaks\n among fragmentation trees and spectra.", + "format": "int32" + }, + "molecularFormula": { + "type": "string", + "description": "Molecular formula that has been annotated to this peak", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "Adduct that has been annotated to this peak", + "nullable": true + }, + "exactMass": { + "type": "number", + "description": "Exact mass of the annotated molecular formula and adduct", + "format": "double", + "nullable": true + }, + "massDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the measured peak mass in mDa", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the measured peak mass in ppm", + "format": "double", + "nullable": true + }, + "recalibratedMassDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the recalibrated peak mass in mDa", + "format": "double", + "nullable": true + }, + "recalibratedMassDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the recalibrated peak mass in ppm", + "format": "double", + "nullable": true + }, + "parentPeak": { + "$ref": "#/components/schemas/ParentPeak" + }, + "substructureAtoms": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the atoms of the structure candidate that are part of this fragments substructure\n (highlighted atoms)", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureBonds": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that are part of this fragments substructure\n (highlighted bonds)\n\n Null if substructure annotation not available or not requested.", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureBondsCut": { + "type": "array", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Array/List of indices of the bonds of the structure candidate that need to be cut to produce this fragments\n substructure (highlighted cutted bonds).\n\n Null if substructure annotation not available or not requested.", + "nullable": true, + "items": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "substructureScore": { + "type": "number", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n This score roughly reflects the probability of this fragment forming.\n\n This is the score of the path from root to this node which has the maximal score or \"profit\".\n The score of a path is equal to the sum of scores of its contained fragments and edges.\n Note: Refers to 'totalScore' in CombinatorialNode\n\n Null if substructure annotation not available or not requested.", + "format": "float", + "nullable": true + }, + "hydrogenRearrangements": { + "type": "integer", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n\n Number of hydrogens rearrangements needed to match the substructure to the fragment formula.\n\n Null if substructure annotation not available or not requested.", + "format": "int32", + "nullable": true + } + }, + "nullable": true + }, + "SpectrumAnnotation": { + "type": "object", + "properties": { + "molecularFormula": { + "type": "string", + "description": "Molecular formula that has been annotated to this spectrum", + "nullable": true + }, + "adduct": { + "type": "string", + "description": "Adduct that has been annotated to this spectrum", + "nullable": true + }, + "exactMass": { + "type": "number", + "description": "Exact mass based on the annotated molecular formula and ionization", + "format": "double", + "nullable": true + }, + "massDeviationMz": { + "type": "number", + "description": "Absolute mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in mDa", + "format": "double", + "nullable": true + }, + "massDeviationPpm": { + "type": "number", + "description": "Relative mass deviation of the exact mass to the precursor mass (precursorMz) of this spectrum in ppm", + "format": "double", + "nullable": true + }, + "structureAnnotationSmiles": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Smiles of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refer to this specific SMILES.\n If you standardize or canonicalize this SMILES in any way the indices of substructure highlighting might\n not match correctly anymore.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationName": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Name of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationSvg": { + "type": "string", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n SVG graphics of the structure candidate used to derive substructure peak annotations via epimetheus insilico fragmentation\n Substructure highlighting (bond and atom indices) refers to this SVG.\n

\n Null if substructure annotation not available or not requested.", + "nullable": true + }, + "structureAnnotationScore": { + "type": "number", + "description": "EXPERIMENTAL: This field is experimental and may be changed (or even removed) without notice until it is declared stable.\n

\n Overall score of all substructure annotations computed for this structure candidate (structureAnnotationSmiles)\n

\n Null if substructure annotation not available or not requested.", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "StructureCandidate": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "nullable": true + }, + "StructureCandidateScored": { + "type": "object", + "properties": { + "inchiKey": { + "type": "string" + }, + "smiles": { + "type": "string" + }, + "structureName": { + "type": "string", + "nullable": true + }, + "structureSvg": { + "type": "string", + "description": "SVG graphics of the structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true + }, + "dbLinks": { + "type": "array", + "description": "List of structure database links belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/DBLink" + } + }, + "spectralLibraryMatches": { + "type": "array", + "description": "List of spectral library matches belonging to this structure candidate\n OPTIONAL: needs to be added by parameter", + "nullable": true, + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "xlogP": { + "type": "number", + "format": "double", + "nullable": true + }, + "rank": { + "type": "integer", + "description": "the overall rank of this candidate among all candidates of this feature", + "format": "int32" + }, + "csiScore": { + "type": "number", + "description": "CSI:FingerID score of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID\n This is the score used for ranking structure candidates", + "format": "double" + }, + "tanimotoSimilarity": { + "type": "number", + "description": "Tanimoto similarly of the fingerprint of this compound to the predicted fingerprint of CSI:FingerID", + "format": "double", + "nullable": true + }, + "mcesDistToTopHit": { + "type": "number", + "description": "Maximum Common Edge Subgraph (MCES) distance to the top scoring hit (CSI:FingerID) in a candidate list.", + "format": "double", + "nullable": true + }, + "fingerprint": { + "$ref": "#/components/schemas/BinaryFingerprint" + } + }, + "nullable": true + }, + "StoredJobSubmission": { + "required": [ + "editable", + "jobSubmission", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Unique name to identify this JobSubmission (job config)." + }, + "editable": { + "type": "boolean", + "description": "False for predefined configs which are not editable and not removable." + }, + "jobSubmission": { + "$ref": "#/components/schemas/JobSubmission" + } + } + }, + "BioTransformerParameters": { + "required": [ + "bioTransformerSequenceSteps", + "cyp450Mode", + "p2Mode" + ], + "type": "object", + "properties": { + "cyp450Mode": { + "type": "string", + "description": "Specify the Phase I/Cyp450 mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Cyp450 mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Cyp450 mode.", + "nullable": true, + "default": "COMBINED", + "enum": [ + "RULE_BASED", + "CY_PRODUCT", + "COMBINED" + ] + }, + "p2Mode": { + "type": "string", + "description": "Specify the Phase II mode for all provided BioTransformerSequenceSteps. Will only be applied to Steps that\n require the Phase II mode as parameter. Can be null in cases where only BioTransformerSequenceSteps are specified\n that do not need the Phase II mode.", + "nullable": true, + "default": "BT_RULE_BASED", + "enum": [ + "BT_RULE_BASED", + "P2_RULE_ONLY", + "COMBINED_RULES" + ] + }, + "useDB": { + "type": "boolean", + "description": "\"Specify if you want to enable the retrieving from database (HMDB) feature.\"", + "default": true + }, + "bioTransformerSequenceSteps": { + "type": "array", + "description": "Specify BioTransformerSequenceSteps to be applied to input structures. MultiStep MetabolicTransformations can\n only be used as singletons (list size of one).", + "items": { + "$ref": "#/components/schemas/BioTransformerSequenceStep" + } + } + } + }, + "BioTransformerSequenceStep": { + "type": "object", + "properties": { + "metabolicTransformation": { + "type": "string", + "enum": [ + "PHASE_1_CYP450", + "EC_BASED", + "PHASE_2", + "HUMAN_GUT", + "ALL_HUMAN", + "ABIOTIC", + "HUMAN_CUSTOM_MULTI" + ] + }, + "iterations": { + "type": "integer", + "format": "int32" + } + } + }, + "AccountCredentials": { + "type": "object", + "properties": { + "username": { + "type": "string", + "nullable": true + }, + "password": { + "type": "string", + "nullable": true + }, + "refreshToken": { + "type": "string", + "nullable": true + } + }, + "description": "Simple object to hold account credentials, e.g. to perform login operations.\n If refreshToken is given, it is usually preferred over password based authentication.\n But in the end this is up to the respective web service." + }, + "RunOptField": { + "type": "string", + "nullable": true, + "enum": [ + "none", + "tags" + ] + }, + "Run": { + "type": "object", + "properties": { + "runId": { + "type": "string", + "description": "Identifier" + }, + "name": { + "type": "string", + "description": "Informative, human-readable name of this run" + }, + "source": { + "type": "string", + "description": "Source location" + }, + "chromatography": { + "type": "string", + "nullable": true + }, + "ionization": { + "type": "string", + "nullable": true + }, + "fragmentation": { + "type": "string", + "nullable": true + }, + "massAnalyzers": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Tag" + }, + "description": "Key: tagName, value: tag", + "nullable": true + } + } + }, + "PageMetadata": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer", + "format": "int64" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "totalPages": { + "type": "integer", + "format": "int64" + } + } + }, + "PagedModelRun": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Run" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelJob": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Job" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "AdductEdgeExperimental": { + "type": "object", + "properties": { + "mzDelta": { + "type": "number", + "format": "double" + }, + "annotation": { + "type": "string" + }, + "from": { + "type": "integer", + "format": "int32" + }, + "to": { + "type": "integer", + "format": "int32" + }, + "mergedCorrelation": { + "type": "number", + "format": "float" + }, + "representativeCorrelation": { + "type": "number", + "format": "float" + }, + "ms2cosine": { + "type": "number", + "format": "float" + }, + "pvalue": { + "type": "number", + "format": "float" + }, + "intensityRatioScore": { + "type": "number", + "format": "float" + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "AdductNetworkExperimental": { + "type": "object", + "properties": { + "nodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AdductNodeExperimental" + } + }, + "edges": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AdductEdgeExperimental" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "AdductNodeExperimental": { + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string" + }, + "mz": { + "type": "number", + "format": "double" + }, + "adductAnnotations": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "Axes": { + "type": "object", + "properties": { + "scanNumber": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "scanIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "retentionTimeInSeconds": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "TraceAnnotationExperimental": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable.", + "enum": [ + "FEATURE", + "MS2" + ] + }, + "description": { + "type": "string", + "nullable": true + }, + "index": { + "type": "integer", + "format": "int32" + }, + "from": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "to": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "TraceExperimental": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "sampleId": { + "type": "string", + "nullable": true + }, + "sampleName": { + "type": "string", + "nullable": true + }, + "label": { + "type": "string" + }, + "color": { + "type": "string" + }, + "intensities": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "annotations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TraceAnnotationExperimental" + } + }, + "mz": { + "type": "number", + "format": "double" + }, + "merged": { + "type": "boolean" + }, + "normalizationFactor": { + "type": "number", + "description": "Traces are stored with raw intensity values. The normalization factor maps them to relative intensities,\n such that traces from different samples can be compared.", + "format": "double" + }, + "noiseLevel": { + "type": "number", + "description": "The noise level is estimated from the median noise in the surrounding scans. It can be used to\n calculate signal-to-noise ratios.", + "format": "double" + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "TraceSetExperimental": { + "type": "object", + "properties": { + "adductNetwork": { + "$ref": "#/components/schemas/AdductNetworkExperimental" + }, + "sampleId": { + "type": "string" + }, + "sampleName": { + "type": "string" + }, + "axes": { + "$ref": "#/components/schemas/Axes" + }, + "traces": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TraceExperimental" + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "QuantTableExperimental": { + "type": "object", + "properties": { + "quantificationMeasure": { + "type": "string", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + }, + "rowType": { + "type": "string", + "enum": [ + "FEATURES", + "COMPOUNDS" + ] + }, + "rowIds": { + "type": "array", + "nullable": true, + "items": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "columnIds": { + "type": "array", + "nullable": true, + "items": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "rowNames": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "columnNames": { + "type": "array", + "nullable": true, + "items": { + "type": "string", + "nullable": true + } + }, + "values": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "PagedModelCompound": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Compound" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "FoldChange": { + "required": [ + "foldChange", + "objectId", + "quantType" + ], + "type": "object", + "properties": { + "leftGroup": { + "type": "string" + }, + "rightGroup": { + "type": "string" + }, + "aggregation": { + "type": "string", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + }, + "quantification": { + "type": "string", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + }, + "quantType": { + "type": "string", + "enum": [ + "FEATURES", + "COMPOUNDS" + ] + }, + "objectId": { + "type": "string" + }, + "foldChange": { + "type": "number", + "format": "double" + } + } + }, + "StatisticsTable": { + "type": "object", + "properties": { + "statisticsType": { + "type": "string", + "enum": [ + "FOLD_CHANGE" + ] + }, + "aggregationType": { + "type": "string", + "enum": [ + "AVG", + "MIN", + "MAX" + ] + }, + "quantificationMeasure": { + "type": "string", + "enum": [ + "APEX_INTENSITY", + "AREA_UNDER_CURVE" + ] + }, + "rowType": { + "type": "string", + "enum": [ + "FEATURES", + "COMPOUNDS" + ] + }, + "rowIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnLeftGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "columnRightGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "values": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + } + }, + "SpectralLibraryMatchSummary": { + "required": [ + "databaseCompoundCount", + "referenceSpectraCount", + "spectralMatchCount" + ], + "type": "object", + "properties": { + "bestMatch": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + }, + "spectralMatchCount": { + "type": "integer", + "format": "int64" + }, + "referenceSpectraCount": { + "type": "integer", + "format": "int32" + }, + "databaseCompoundCount": { + "type": "integer", + "format": "int32" + } + } + }, + "PagedModelSpectralLibraryMatch": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpectralLibraryMatch" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "AlignedFeatureQualityExperimental": { + "required": [ + "alignedFeatureId", + "categories", + "overallQuality" + ], + "type": "object", + "properties": { + "alignedFeatureId": { + "type": "string", + "description": "Id of the feature (aligned over runs) this quality information belongs to." + }, + "overallQuality": { + "type": "string", + "description": "Overall Quality", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "categories": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/Category" + }, + "description": "Contains all pre-computation quality information that belong to\n this feature (aligned over runs), such as information about the quality of the peak shape, MS2 spectrum etc.," + } + }, + "description": "EXPERIMENTAL: This schema is experimental and may be changed (or even removed) without notice until it is declared stable." + }, + "Category": { + "type": "object", + "properties": { + "categoryName": { + "type": "string" + }, + "overallQuality": { + "type": "string", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/QualityItem" + } + } + } + }, + "QualityItem": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "quality": { + "type": "string", + "nullable": true, + "enum": [ + "NOT_APPLICABLE", + "LOWEST", + "BAD", + "DECENT", + "GOOD" + ] + }, + "weight": { + "type": "string", + "enum": [ + "MINOR", + "MAJOR", + "CRITICAL" + ] + } + } + }, + "AnnotatedMsMsData": { + "required": [ + "mergedMs2", + "ms2Spectra" + ], + "type": "object", + "properties": { + "mergedMs2": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + }, + "ms2Spectra": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnnotatedSpectrum" + } + } + } + }, + "PagedModelStructureCandidateScored": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateScored" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelFormulaCandidate": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FormulaCandidate" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelStructureCandidateFormula": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StructureCandidateFormula" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "PagedModelAlignedFeature": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlignedFeature" + } + }, + "page": { + "$ref": "#/components/schemas/PageMetadata" + } + } + }, + "Info": { + "required": [ + "availableILPSolvers", + "supportedILPSolvers" + ], + "type": "object", + "properties": { + "nightSkyApiVersion": { + "type": "string", + "description": "API version of the SIRIUS Nightsky API", + "nullable": true + }, + "siriusVersion": { + "type": "string", + "description": "Version of the SIRIUS application", + "nullable": true + }, + "latestSiriusVersion": { + "type": "string", + "description": "Latest available Version of the SIRIUS application", + "nullable": true + }, + "latestSiriusLink": { + "type": "string", + "description": "Link to the latest available Version of the SIRIUS application", + "nullable": true + }, + "updateAvailable": { + "type": "boolean", + "description": "true if newer SIRIUS version is available" + }, + "siriusLibVersion": { + "type": "string", + "description": "Version of the SIRIUS libraries", + "nullable": true + }, + "fingerIdLibVersion": { + "type": "string", + "description": "Version of the CSI:FingerID libraries", + "nullable": true + }, + "chemDbVersion": { + "type": "string", + "description": "Version of the Chemical Database available via SIRIUS web services", + "nullable": true + }, + "fingerIdModelVersion": { + "type": "string", + "description": "Version of the Machine learning models used for Fingerprint, Compound Class and Structure Prediction\n Not available if web service is not reachable.", + "nullable": true + }, + "fingerprintId": { + "type": "string", + "description": "Version of the Molecular Fingerprint used by SIRIUS", + "nullable": true + }, + "availableILPSolvers": { + "type": "array", + "description": "Set of solvers that are configured correctly and can be loaded", + "items": { + "type": "string", + "enum": [ + "GUROBI", + "CPLEX", + "GLPK", + "CLP" + ] + } + }, + "supportedILPSolvers": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Set of ILP Solvers that are Supported and their version information" + } + } + }, + "GuiInfo": { + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "The project this instance is running on" + } + } + }, + "ConnectionCheck": { + "required": [ + "errors", + "licenseInfo" + ], + "type": "object", + "properties": { + "licenseInfo": { + "$ref": "#/components/schemas/LicenseInfo" + }, + "errors": { + "type": "array", + "description": "List of errors ordered by significance. first error should be reported and addressed first.\n Following errors might just be follow-up errors", + "items": { + "$ref": "#/components/schemas/ConnectionError" + } + } + } + }, + "ConnectionError": { + "required": [ + "errorKlass", + "errorType", + "siriusErrorCode", + "siriusMessage" + ], + "type": "object", + "properties": { + "errorType": { + "type": "string", + "enum": [ + "WARNING", + "ERROR" + ] + }, + "errorKlass": { + "type": "string", + "enum": [ + "UNKNOWN", + "INTERNET", + "LOGIN_SERVER", + "LICENSE_SERVER", + "TOKEN", + "LOGIN", + "LICENSE", + "TERMS", + "APP_SERVER" + ] + }, + "siriusErrorCode": { + "type": "integer", + "format": "int32" + }, + "siriusMessage": { + "type": "string" + }, + "serverResponseErrorCode": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "serverResponseErrorMessage": { + "type": "string", + "nullable": true + }, + "error": { + "type": "boolean" + }, + "warning": { + "type": "boolean" + } + } + }, + "LicenseInfo": { + "type": "object", + "properties": { + "userEmail": { + "type": "string", + "description": "Email address of the user account this license information belongs to.", + "nullable": true + }, + "userId": { + "type": "string", + "description": "User ID (uid) of the user account this license information belongs to.", + "nullable": true + }, + "subscription": { + "$ref": "#/components/schemas/Subscription" + }, + "consumables": { + "$ref": "#/components/schemas/SubscriptionConsumables" + }, + "terms": { + "type": "array", + "nullable": true, + "items": { + "$ref": "#/components/schemas/Term" + } + } + } + }, + "SubscriptionConsumables": { + "type": "object", + "properties": { + "pendingJobs": { + "type": "integer", + "format": "int32" + }, + "countedCompounds": { + "type": "integer", + "format": "int32" + } + }, + "nullable": true + }, + "Term": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "link": { + "type": "string", + "format": "uri" + } + }, + "nullable": true + }, + "WebServerNamespace": { + "type": "object", + "properties": { + "value": { + "type": "string" + } + } + }, + "SecurityContext": { + "type": "object", + "properties": { + "principal": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + } + } + } + } + } + } +} From ab219171403a98ba205bf35a5c51c2ebff949d0d Mon Sep 17 00:00:00 2001 From: joXemMx Date: Wed, 18 Feb 2026 20:35:31 +0100 Subject: [PATCH 14/14] add gui to pysirius_api.py --- client-api_python/generated/PySirius/pysirius_api.py | 4 ++++ client-api_python/pysirius_api.py | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/client-api_python/generated/PySirius/pysirius_api.py b/client-api_python/generated/PySirius/pysirius_api.py index 912ebc9c..9821a2fd 100644 --- a/client-api_python/generated/PySirius/pysirius_api.py +++ b/client-api_python/generated/PySirius/pysirius_api.py @@ -36,6 +36,10 @@ def features(self): """returns API endpoint of the FeaturesApi""" return PySirius.FeaturesApi(self.api_client) + def gui(self): + """returns API endpoint of the GuiApi""" + return PySirius.GuiApi(self.api_client) + def infos(self): """returns API endpoint of the InfoApi""" return PySirius.InfoApi(self.api_client) diff --git a/client-api_python/pysirius_api.py b/client-api_python/pysirius_api.py index 912ebc9c..9821a2fd 100644 --- a/client-api_python/pysirius_api.py +++ b/client-api_python/pysirius_api.py @@ -36,6 +36,10 @@ def features(self): """returns API endpoint of the FeaturesApi""" return PySirius.FeaturesApi(self.api_client) + def gui(self): + """returns API endpoint of the GuiApi""" + return PySirius.GuiApi(self.api_client) + def infos(self): """returns API endpoint of the InfoApi""" return PySirius.InfoApi(self.api_client)